BlinCT19 серпня 2019 р. 08: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
Стабільний хостинг, на якому розміщується соціальна мережа EVILEG. Для проектів на Django радимо VDS хостинг.Вам це подобається? Поділіться в соціальних мережах!
AD
- Akiv Doros
- 11 листопада 2024 р. 22:58
C++ - Тест 004. Указатели, Массивы и Циклы
- Результат:50бали,
- Рейтинг балів-4
m
- molni99
- 26 жовтня 2024 р. 08:37
C++ - Тест 004. Указатели, Массивы и Циклы
- Результат:80бали,
- Рейтинг балів4
m
- molni99
- 26 жовтня 2024 р. 08:29
C++ - Тест 004. Указатели, Массивы и Циклы
- Результат:20бали,
- Рейтинг балів-10
Останні коментарі
ИМ
Django - Підручник 017. Налаштуйте сторінку входу до Django Добрый вечер Евгений! Я сделал себе авторизацию аналогичную вашей, все работает, кроме возврата к предидущей странице. Редеректит всегда на главную, хотя в логах сервера вижу запросы на правильн…
Игорь Максимов22 листопада 2024 р. 19:51
Evgenii Legotckoi31 жовтня 2024 р. 21:37
Читалка файлів fb3 на Qt Creator Подскажите как это запустить? Я не шарю в программировании и кодинге. Скачал и установаил Qt, но куча ошибок выдается и не запустить. А очень надо fb3 переконвертировать в html
ИМ
Django - Урок 064. Як написати розширення для Python Markdown Приветствую Евгений! У меня вопрос. Можно ли вставлять свои классы в разметку редактора markdown? Допустим имея стандартную разметку: <ul> <li></li> <li></l…
Игорь Максимов05 жовтня 2024 р. 14:51
QML - Урок 016. База даних SQLite та робота з нею в QML Qt Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
Тепер обговоріть на форумі
Evgenii Legotckoi24 червня 2024 р. 22:11
t
google domain [url=https://google.com/]domain[/url] domain [http://www.example.com link title]
tonypeachey115 листопада 2024 р. 14:04
NSProject04 червня 2022 р. 10:49
IscanderChe31 жовтня 2024 р. 22:43
Машина тьюринга // Начальное состояние 0 0, ,<,1 // Переход в состояние 1 при пустом символе 0,0,>,0 // Остаемся в состоянии 0, двигаясь вправо при встрече 0 0,1,>…
так модель пуста у вас, що має відображатись?
Изначально там ничего нету, но по кнопке add для простого примера должен добавится элемент например как я выше написал с индексом и данными. 0 : 345
Но у листа есть изначально высота.
Компонент навернео вот таким должен быть
Ну в качестве теста
ссылка на весь проект есть?
спробуйте додати, чи буде відображатись
WrapWorker22.tar.gz
Вообще вприследуется такая логика что создается лист таймеров, при нажатии на add в лист доабвляется первый таймер и он вместе с его индексом отображается в qml.
Дефолтно это 0.
Если нажать старт или стоп то это само собою управление таймером по индексу.
Единственное что я забыл добавить на qml так это текстовое поле куда вводится руками номер индекса таймера которым надо управлять, или удалить. На стороне крестов там все методы я уже написал.
Осталось вот с qml разобратся.
вам нужна модель, модель отвечает за данные в листе, делегат отвечает за то как эти данные должны отображаться, тоесть у вас есть как отображается, а что отображать нет
при add должно происходить model.append(data)
Кинул вон архив с самим тестовым проектом.
не могли бы по самому проекту что я архивом кинул как правильно нужно модель с делегатом сделать?
я в дороге, по тому примеру что в есть выше вам чтоб заработало нужно примерно следующее
ListModel{
id: list_model
}
в ListView добавить model:list_model
там где кнопка add по нажатию:
list_model.append(delegateLable.text="123")
видел ,как время повится , посмотрю
Спасибо.
Для уточнения хотел написать, там класс Timers он в себе имеет лист с таймерами.
Таймеры добавляются через метод. То есть как я понимаю то что я хочу отобразить в листе на стороне qml это именно то что имеется в листе из Timers. У каждого таймера есть старт и стоп. Методы тоже у этого класса есть. И поулчается что отобразить хочу те таймеры что добавляются в лист и первой колонкой это индекс данного таймера. Потому что потом по данному индексу хочу удалять их.