BlinCT
BlinCT19 августа 2019 г. 8:53

Не отображается ListView

Всем привет.
Пытаюсь сделать qml обьект ListView который будет меить прокрутку если обьектов там будет больше дефолтной высоты.
Под ним 4 кнопки для добавления и удаления этих обьектов.
Но почему то у меня не отображается он. Подскажите где ошибку допускаю?
Вроде выставил высоту и ширину, но чет не показывает.
И еще, если это важно то я пытаюсь делегат который будет представлять из себя обьекты в листе как индекс : данные
Например:
0 : 124
1 : 333

    ScrollView
    {
        id: scrollView
        anchors.top: parent.top

        ListView
        {
            id: listView
            anchors.fill: parent

            width: 180; height: 200
            anchors.top: parent.top
            anchors.verticalCenter: parent.verticalCenter
            delegate: listDelegate

            contentWidth: 320
            flickableDirection: Flickable.AutoFlickDirection

        }
    }

    Component
    {
        id: listDelegate

        Label
        {
            id: delegateLabel

            anchors.centerIn: parent

            color: "red"

            text: workerA.time
        }
    }

    GridLayout
    {
        id: grid

        rows: 2
        columns: 2
        anchors.top: scrollView.bottom

        rowSpacing: 10
        columnSpacing: 10

        Rectangle
        {
            width: 50
            height: 40
            Text { id: textbutton_1; text: qsTr("ADD"); anchors.centerIn: parent }
            Layout.row: 0; Layout.column: 0;
            gradient: Gradient {
                GradientStop { position: 0.0; color: "lightsteelblue" }
                GradientStop { position: 1.0; color: "blue" }
            }
//            MouseArea { anchors.fill: parent; onClicked: { workerA.change = !workerA.change } }
        }
        Rectangle
        {
            width: 50
            height: 40
            Text { id: textbutton_2; text: qsTr("REM"); anchors.centerIn: parent }
            Layout.row: 1; Layout.column: 0;
            gradient: Gradient {
                GradientStop { position: 0.0; color: "lightsteelblue" }
                GradientStop { position: 1.0; color: "blue" }
            }
            /*onClicked: Core.stack.push(nandTest);*/
        }
        Rectangle
        {
            width: 50
            height: 40
            Text { id: textbutton_3; text: qsTr("START"); anchors.centerIn: parent }
            Layout.row: 0; Layout.column: 1;
            gradient: Gradient {
                GradientStop { position: 0.0; color: "lightsteelblue" }
                GradientStop { position: 1.0; color: "blue" }
            }
            /*onClicked: Core.stack.push(displayTest);*/
        }
        Rectangle
        {
            width: 50
            height: 40
            Text { id: textbutton_4; text: qsTr("STOP"); anchors.centerIn: parent }
            Layout.row: 1; Layout.column: 1;
            gradient: Gradient {
                GradientStop { position: 0.0; color: "lightsteelblue" }
                GradientStop { position: 1.0; color: "blue" }
            }
            /*onClicked: Core.stack.push(touchTest);*/
        }
    }

Заранее спасибо.

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

Вам это нравится? Поделитесь в социальных сетях!

12
R
  • 19 августа 2019 г. 9:13

так модель пуста у вас, що має відображатись?

    BlinCT
    • 19 августа 2019 г. 9:27

    Изначально там ничего нету, но по кнопке add для простого примера должен добавится элемент например как я выше написал с индексом и данными. 0 : 345
    Но у листа есть изначально высота.

      BlinCT
      • 19 августа 2019 г. 9:33

      Компонент навернео вот таким должен быть

          Component
          {
              id: listDelegate
      
              Row
              {
                  Label { id: index; color: "red"; text: "index :" }
                  Label { id: delegateLabel; color: "red"; text: "123" }
              }
          }
      

      Ну в качестве теста

        Pavel K.
        • 19 августа 2019 г. 9:38

        ссылка на весь проект есть?

          R
          • 19 августа 2019 г. 9:45

          спробуйте додати, чи буде відображатись

          ListView {
               id: listView
               model: p1model
               delegate: delegate
               anchors.top: p1name.bottom
               anchors.topMargin: units.gu(1)
          }
          
          ListModel {
               id: p1model
               ListElement { score: "0" }
          }
          
            BlinCT
            • 19 августа 2019 г. 9:46

            WrapWorker22.tar.gz WrapWorker22.tar.gz

            Вообще вприследуется такая логика что создается лист таймеров, при нажатии на add в лист доабвляется первый таймер и он вместе с его индексом отображается в qml.
            Дефолтно это 0.
            Если нажать старт или стоп то это само собою управление таймером по индексу.
            Единственное что я забыл добавить на qml так это текстовое поле куда вводится руками номер индекса таймера которым надо управлять, или удалить. На стороне крестов там все методы я уже написал.
            Осталось вот с qml разобратся.

              Алексей Внуков
              • 19 августа 2019 г. 10:17
              • (ред.)

              вам нужна модель, модель отвечает за данные в листе, делегат отвечает за то как эти данные должны отображаться, тоесть у вас есть как отображается, а что отображать нет

              при add должно происходить model.append(data)

                BlinCT
                • 19 августа 2019 г. 11:00

                Кинул вон архив с самим тестовым проектом.

                  BlinCT
                  • 19 августа 2019 г. 11:20

                  не могли бы по самому проекту что я архивом кинул как правильно нужно модель с делегатом сделать?

                    Алексей Внуков
                    • 19 августа 2019 г. 11:29

                    я в дороге, по тому примеру что в есть выше вам чтоб заработало нужно примерно следующее

                    ListModel{
                    id: list_model
                    }

                    в ListView добавить model:list_model

                    там где кнопка add по нажатию:
                    list_model.append(delegateLable.text="123")

                      Pavel K.
                      • 20 августа 2019 г. 2:45

                      видел ,как время повится , посмотрю

                        BlinCT
                        • 20 августа 2019 г. 3:49

                        Спасибо.
                        Для уточнения хотел написать, там класс Timers он в себе имеет лист с таймерами.
                        Таймеры добавляются через метод. То есть как я понимаю то что я хочу отобразить в листе на стороне qml это именно то что имеется в листе из Timers. У каждого таймера есть старт и стоп. Методы тоже у этого класса есть. И поулчается что отобразить хочу те таймеры что добавляются в лист и первой колонкой это индекс данного таймера. Потому что потом по данному индексу хочу удалять их.

                          Комментарии

                          Только авторизованные пользователи могут публиковать комментарии.
                          Пожалуйста, авторизуйтесь или зарегистрируйтесь
                          AD

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

                          • Результат:50баллов,
                          • Очки рейтинга-4
                          m
                          • molni99
                          • 26 октября 2024 г. 6:37

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

                          • Результат:80баллов,
                          • Очки рейтинга4
                          m
                          • molni99
                          • 26 октября 2024 г. 6:29

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

                          • Результат:20баллов,
                          • Очки рейтинга-10
                          Последние комментарии
                          i
                          innorwall15 ноября 2024 г. 7:27
                          Релиз утилиты развертывания С++/Qt и QML приложений CQtDeployer v1.4.0 (Binary Box) optionally substituted alkoxy, optionally substituted alkenyloxy, optionally substituted alkynyloxy, optionally substituted aryloxy, OCH, OC H, OC H, OC H, OC H, OC H, OC H, O C CH, OCH CH OH, O…
                          i
                          innorwall15 ноября 2024 г. 2:26
                          Qt/C++ - Урок 031. QCustomPlot - строим график по времени buy generic priligy We can just chat, and we will not lose too much time anyway
                          i
                          innorwall15 ноября 2024 г. 0:03
                          Qt/C++ - Урок 060. Настройка внешнего вида приложения в рантайме I didnt have an issue work colors priligy dapoxetine 60mg revia cost uk August 3, 2022 Reply
                          i
                          innorwall14 ноября 2024 г. 16:42
                          Как Копировать Файлы в Linux If only females relatives with DZ offspring were considered these percentages were 23 order priligy online uk
                          Сейчас обсуждают на форуме
                          i
                          innorwall14 ноября 2024 г. 8:39
                          добавить qlineseries в функции priligy amazon canada 93 GREB1 protein GREB1 AB011147 6
                          i
                          innorwall11 ноября 2024 г. 15:55
                          Всё ещё разбираюсь с кешем. priligy walgreens levitra dulcolax carbs The third ring was found to be made up of ultra relativistic electrons, which are also present in both the outer and inner rings
                          9
                          9Anonim25 октября 2024 г. 14:10
                          Машина тьюринга // Начальное состояние 0 0, ,<,1 // Переход в состояние 1 при пустом символе 0,0,>,0 // Остаемся в состоянии 0, двигаясь вправо при встрече 0 0,1,>…
                          ИМ
                          Игорь Максимов3 октября 2024 г. 9:05
                          Реализация навигации по разделам Спасибо Евгений!

                          Следите за нами в социальных сетях