BlinCTТам. 19, 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
Стабильный хостинг, на котором располагается социальная сеть EVILEG. Для проектов на Django рекомендуем VDS хостинг.Ол саған ұнайды ма? Әлеуметтік желілерде бөлісіңіз!
Пікірлер
OI
- Ora Iro
- Жел. 24, 2024, 6:38 Т.Ж.
C++ - Тест 001. Первая программа и типы данных
- Нәтиже:40ұпай,
- Бағалау ұпайлары-8
AD
- Akiv Doros
- Қар. 11, 2024, 2:58 Т.Қ.
C++ - Тест 004. Указатели, Массивы и Циклы
- Нәтиже:50ұпай,
- Бағалау ұпайлары-4
m
- molni99
- Қаз. 26, 2024, 1:37 Т.Ж.
C++ - Тест 004. Указатели, Массивы и Циклы
- Нәтиже:80ұпай,
- Бағалау ұпайлары4
Соңғы пікірлер
ИМ
Django - Оқулық 017. Теңшелген Django кіру беті Добрый вечер Евгений! Я сделал себе авторизацию аналогичную вашей, все работает, кроме возврата к предидущей странице. Редеректит всегда на главную, хотя в логах сервера вижу запросы на правильн…
Игорь МаксимовҚар. 22, 2024, 11:51 Т.Ж.
Evgenii LegotckoiҚаз. 31, 2024, 2:37 Т.Қ.
Qt Creator көмегімен fb3 файл оқу құралы Подскажите как это запустить? Я не шарю в программировании и кодинге. Скачал и установаил Qt, но куча ошибок выдается и не запустить. А очень надо fb3 переконвертировать в html
ИМ
Django - Сабақ 064. Python Markdown кеңейтімін қалай жазуға болады Приветствую Евгений! У меня вопрос. Можно ли вставлять свои классы в разметку редактора markdown? Допустим имея стандартную разметку: <ul> <li></li> <li></l…
Игорь МаксимовҚаз. 5, 2024, 7:51 Т.Ж.
QML - Сабақ 016. SQLite деректер қоры және онымен QML Qt-та жұмыс істеу Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
Енді форумда талқылаңыз
Нужно запретить перемещение только некоторых итемов, остальные перемещать можно. Вопрос решен. Узнать QModelIndex элемента на который мы перетаскиваем другой элемент, можно с помощью функции indexAt(event->position().toPoint()) представления QTreeViev вызываемой в переопр…
AW
Why Paying for a Research Paper Can Be a Smart Choice Writing a research paper can be a daunting task, especially when faced with tight deadlines, complex topics, or a lack of resources. For many students, paying for a research paper is a practical…
Ayden WatkinsҚаң. 2, 2025, 12:09 Т.Ж.
p
Finding the Right Rittal Small Enclosure for Your Needs Rittal is a leading manufacturer of enclosures for industrial and IT applications. Their small enclosures offer a compact and reliable solution for a wide range of needs, from housing electronic…
pimacontrols85Жел. 31, 2024, 9:39 Т.Ж.
Donald RandolphЖел. 30, 2024, 2:59 Т.Ж.
Nirvana Yoga SchoolЖел. 30, 2024, 5:13 Т.Ж.
так модель пуста у вас, що має відображатись?
Изначально там ничего нету, но по кнопке 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. У каждого таймера есть старт и стоп. Методы тоже у этого класса есть. И поулчается что отобразить хочу те таймеры что добавляются в лист и первой колонкой это индекс данного таймера. Потому что потом по данному индексу хочу удалять их.