BlinCT
BlinCTҚыр. 15, 2023, 12:35 Т.Қ.

Размеры полей в TreeView

qml

Всем привет.
Пытаюсь сделать дерево вот такого вида

Дерево treeview
Пытаюсь организовать делегат для каждой строки в дереве. ТО есть отступ какого то размера и если при открытии есть подсписок то увеличивать наверное с каждым шагом по 2.
Но что-то не моуг правильно выстроить данные для строки.
Может кто поправить меня где ошибка у меня?
Вот часть кода:

Rectangle
        {
            SplitView.minimumWidth: root.width * 0.1
//            SplitView.maximumWidth: root.width * 0.25

            width: root.width * 0.5

            color: "#5a5a5a" // TODO: need from C++

            TreeView
            {
                id: treeViewBookmark

                anchors.fill: parent

                clip: true

                delegate: Item
                {
                    id: treeDelegate
                    required property int page
                    required property point location
                    required property real zoom
//                    color: "yellow"

//                    implicitWidth: padding + label.x + label.implicitWidth + padding
                    implicitHeight: label.implicitHeight * 1.5

                    readonly property real indent: 20
                    readonly property real padding: 5

//                    // Assigned to by TreeView:
                    required property TreeView treeView
                    required property bool isTreeNode
                    required property bool expanded
                    required property int hasChildren
                    required property int depth

                    RowLayout
                    {
                        spacing: treeViewBookmark.width * 0.03

                        anchors.fill: parent

                        Rectangle
                        {
                            id: name

                            Layout.fillHeight: true
                            width: treeDelegate.padding + (treeDelegate.depth * indicator.width)
                            color: "yellow"
//                            Layout.width: treeDelegate.padding + (treeDelegate.depth * treeDelegate.indent)
                        }

                        Rectangle
                        {
                            id: rectIndicator

                            width: childrenRect.width

                            Text
                            {
                                id: indicator
                                visible: treeDelegate.isTreeNode && treeDelegate.hasChildren
//                                x: padding + (treeDelegate.depth * treeDelegate.indent)
                                anchors.verticalCenter: label.verticalCenter
                                text: "▸"
                                rotation: treeDelegate.expanded ? 90 : 0
                            }
                        }

                        Rectangle
                        {
                            id: rectTabel

                            Text
                            {
                                id: label
                                anchors.fill: parent

                                clip: true
                                text: model.display
                                color: "#b7b7b7"
                            }
                        }


                    }

                    TapHandler {
                        onTapped: {
                            treeView.toggleExpanded(row)
                            var qi = treeViewBookmark.index(row, 0)
                        }
                    }
                }

                model: PdfBookmarkModel
                {
                    document: docPdf
                }

                ScrollBar.vertical: ScrollBar { }
            }
        }

Заранее благодарю

Рекомендуем хостинг TIMEWEB
Рекомендуем хостинг TIMEWEB
Стабильный хостинг, на котором располагается социальная сеть EVILEG. Для проектов на Django рекомендуем VDS хостинг.

Ол саған ұнайды ма? Әлеуметтік желілерде бөлісіңіз!

0

Пікірлер

Тек рұқсаты бар пайдаланушылар ғана пікір қалдыра алады.
Кіріңіз немесе Тіркеліңіз
m
  • molni99
  • Қаз. 26, 2024, 1:37 Т.Ж.

C++ - Тест 004. Указатели, Массивы и Циклы

  • Нәтиже:80ұпай,
  • Бағалау ұпайлары4
m
  • molni99
  • Қаз. 26, 2024, 1:29 Т.Ж.

C++ - Тест 004. Указатели, Массивы и Циклы

  • Нәтиже:20ұпай,
  • Бағалау ұпайлары-10

C++ - Тест 003. Условия и циклы

  • Нәтиже:42ұпай,
  • Бағалау ұпайлары-8
Соңғы пікірлер
Evgenii Legotckoi
Evgenii LegotckoiҚаз. 31, 2024, 2:37 Т.Қ.
Django - Сабақ 064. Python Markdown кеңейтімін қалай жазуға болады Добрый день. Да, можно. Либо через такие же плагины, либо с постобработкой через python библиотеку Beautiful Soup
A
ALO1ZEҚаз. 19, 2024, 8:19 Т.Ж.
Qt Creator көмегімен fb3 файл оқу құралы Подскажите как это запустить? Я не шарю в программировании и кодинге. Скачал и установаил Qt, но куча ошибок выдается и не запустить. А очень надо fb3 переконвертировать в html
ИМ
Игорь МаксимовҚаз. 5, 2024, 7:51 Т.Ж.
Django - Сабақ 064. Python Markdown кеңейтімін қалай жазуға болады Приветствую Евгений! У меня вопрос. Можно ли вставлять свои классы в разметку редактора markdown? Допустим имея стандартную разметку: <ul> <li></li> <li></l…
d
dblas5Шілде 5, 2024, 11:02 Т.Ж.
QML - Сабақ 016. SQLite деректер қоры және онымен QML Qt-та жұмыс істеу Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
k
kmssrАқп. 8, 2024, 6:43 Т.Қ.
Qt Linux - Сабақ 001. Linux астында Autorun Qt қолданбасы как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
Енді форумда талқылаңыз
9
9AnonimҚаз. 25, 2024, 9:10 Т.Ж.
Машина тьюринга // Начальное состояние 0 0, ,<,1 // Переход в состояние 1 при пустом символе 0,0,>,0 // Остаемся в состоянии 0, двигаясь вправо при встрече 0 0,1,>…
Evgenii Legotckoi
Evgenii LegotckoiМаусым 24, 2024, 3:11 Т.Қ.
добавить qlineseries в функции Я тут. Работы оень много. Отправил его в бан.
F
FynjyШілде 22, 2024, 4:15 Т.Ж.
при создании qml проекта Kits есть но недоступны для выбора Поставил Qt Creator 11.0.2. Qt 6.4.3 При создании проекта Qml не могу выбрать Kits, они все недоступны, хотя настроены и при создании обычного Qt Widget приложения их можно выбрать. В чем может …

Бізді әлеуметтік желілерде бақылаңыз