DE
Denis ErokhinJune 4, 2019, 3:48 p.m.
При выборе элеметна на ListView список пролистывается в конец.
Приложение для работы с БД.
Для отображения части информации используется ScrollView{ListView{}}. В качастве делегата используется DelegateModel.
DelegateModel{ id: visualModel model: elemModel groups: [ DelegateModelGroup{ name: "selected" } ] function itemsInSelected(){ filterOnGroup = "selected"; var cnt = count; filterOnGroup = "items"; return cnt; } delegate: Rectangle { id: listItem width: listViewId.width height: 50 color: (listItem.DelegateModel.inSelected) ? "#575757" : "#d3d3d3"; Text { id: nameText font.pixelSize: 18 text: "<b>" + NAME_c + "</b>" color: (listItem.DelegateModel.inSelected) ? "white" : "black" } Text { anchors.left: nameText.left anchors.right: parent.right anchors.top: nameText.bottom text: "<i>" + dbHelper.getElementType(ELEMENT_TYPE_ID_c) + "</i>" color: (listItem.DelegateModel.inSelected) ? "white" : "black" } MouseArea{ anchors.fill: parent onClicked:{ if (mouse.button === Qt.LeftButton){ if (mouse.modifiers & Qt.ControlModifier){ listItem.DelegateModel.inSelected = !listItem.DelegateModel.inSelected; }else{ //I am ashamed for that :( visualModel.items.removeGroups(0, visualModel.items.count, ["selected"]); listItem.DelegateModel.inSelected = true; } xTextInput.text = X_c; yTextInput.text = Y_c; zTextInput.text = Z_c; listViewId.curentElemId = ID_c; } } } } }
ScrollView{ anchors.left: searchPanel.left anchors.right: searchPanel.right anchors.top: searchPanel.bottom anchors.topMargin: searchPanel.height * 0.1 anchors.bottom: elemBtnsPanel.top anchors.bottomMargin: elemBtnsPanel.height * 0.1 ListView { id: listViewId visible: true focus: true currentIndex: -1 clip: true; cacheBuffer: 100000 snapMode: ListView.SnapToItem model: visualModel enabled: {return !isEditable} anchors.fill: parent property int curentElemId: 0; } }
В качестве модели выступает наследник от QSqlQueryModel.
Проблема, в том, что при выборе элеметна на ListView список пролистывается в конец.
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.Do you like it? Share on social networks!
B
- Bogdannn
- March 27, 2024, 4:15 p.m.
C++ - Test 001. The first program and data types
- Result:46points,
- Rating points-6
Last comments
Qt Linux - Lesson 001. Autorun Qt application under Linux как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
АК
Qt WinAPI - Lesson 007. Working with ICMP Ping in Qt Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
Анатолий КононенкоFeb. 4, 2024, 10:50 p.m.
EVADec. 25, 2023, 7:30 a.m.
Boost - static linking in CMake project under Windows Сделал всё по-как у вас, но выдаёт ошибку [build] LINK : fatal error LNK1104: не удается открыть файл "libboost_locale-vc142-mt-gd-x64-1_74.lib" Хоть убей, не могу понять в чём дел…
Qt/C++ - Lesson 056. Connecting the Boost library in Qt for MinGW and MSVC compilers Для решения твой проблемы добавь в файл .pro строчку "LIBS += -lws2_32" она решит проблему , лично мне помогло.
Now discuss on the forum
Мобильное приложение на C++Qt и бэкенд к нему на Django Rest Framework Евгений, добрый день! Такой вопрос. Верно ли следующее утверждение: Любое Android-приложение, написанное на Java/Kotlin чисто теоретически (пусть и с большими трудностями) можно написать и на C+…
Павел ДорофеевApril 13, 2024, 11:35 p.m.
Вернуть старое поведение QComboBox, не менять индекс при resetModel Добрый день! У нас много проектов в которых используется QComboBox, в версии 5.5.1, когда модель испускает сигнал resetModel, currentIndex не менялся. В версии 5.15 при resetModel происходит try…
Как получить в массив значения из связанной модели? Спасибо, разобрался:))
AC
QML Обнулить значения SpinBox Доброго времени суток, не могу разобраться с обнулением значение SpinBox находящего в делегате. import QtQuickimport QtQuick.ControlsWindow { width: 640 height: 480 visible: tr…
Alexandru CodreanuJan. 19, 2024, 8:57 a.m.
Выполнять селект элементов на view это архитектурная ошибка.
Тебе нужно сделать метод select в своей модели (наследник от QSqlQueryModel), там будут выполнятся операции по выборке а также должно быть свойство отображающие какой элемент сейчас выделен.
Что касается перелистывания списка, то подазриваю что вы используете методы BeginResetModel and endResetModel, эти методы полностью перестраивают вьюшку а значит и сбивают скрол. Нужно использовать:
Проблема была в смене фильтра в функции.