Просмотр сообщений
|
Страниц: 1 2 [3] 4 5 ... 313
|
34
|
Qt / Вопросы новичков / Re: Unicode Character
|
: Ноябрь 23, 2023, 23:11
|
да, полностью поддерживает. Можно создавать строки или прямо в кодировке утф-8 или вставлять соответствующие эскейп-последовательности.
|
|
|
36
|
Qt / Qt Quick / Re: Перерисовка модели в TreeView с сохранением состояния
|
: Ноябрь 13, 2023, 12:10
|
как сделать — это ж ты должен знать, твой код и твоя логика Вот для eBorderColor у тебя есть код получения страницы для данного индекса, можно этот код переиспользовать, только сделать цикл по всем доступным индексам (или какому-то их подмножеству, если логика позволяет упрощение) и найти где полученная страница совпадает с текущей. Если вычисления там тяжелые, то лучше закэшировать, да. Только непонятно зачем ты хранишь указатель на список и указатель на словарь, а не по значению. Дальше просто в setCurrentPage() получаешь список индексов для старой страницы и для новой, и вот эти индексы подаешь в dataChanged. лист ролей — ну создай лист из одного элемента, в чем проблема если подашь пустой список, то будут пересчитаны все роли, что в данном случае не нужно. C++ (Qt) QList{{static_cast<int>(RoleAttributes::eBorderColor)}} // or QList<int>{} << static_cast<int>(RoleAttributes::eBorderColor)
|
|
|
37
|
Qt / Qt Quick / Re: Перерисовка модели в TreeView с сохранением состояния
|
: Ноябрь 12, 2023, 22:56
|
метод CC2gdocv_CustomPdfBookmarkModel::data() принимает индекс, для которого рассчитывается значение переданной роли, у тебя там для eBorderColor есть логика определения каким цветом выделять заданный индекс. А теперь тебе надо по сути сделать обратную операцию: по заданному номеру страницы определить каким индексам модели она соответствует, таким образом ты сможешь получить как старые индексы (те, что выделены сейчас), так и новые (для новой страницы в setCurrentPage). По коду кажется, что можно просто пробежаться по всем доступным индексам и выполнить код, который сейчас у тебя для eBorderColor, но может можно и как-то быстрее (зависит от твоей внутренней логики и доступных данных).
|
|
|
39
|
Qt / Qt Quick / Re: Перерисовка модели в TreeView с сохранением состояния
|
: Ноябрь 12, 2023, 10:10
|
насколько я понимаю, логика должна быть такая: 1. тыкаем в раздел 2. в модели меняется текущая страница 3. модель сообщает, что какие-то ее данные изменились 4. это приводит к автоматическому обновлению / перерисовке тривью вот сигнал dataChanged как раз для п.3 и служит. ты должен определить какой элемент (индекс) изменился, также опционально можно указать какая именно роль изменилась. beginResetModel можно использовать как альтернативу, если меняется много индексов сразу: When a model radically changes its data it can sometimes be easier to just call this function rather than emit dataChanged() to inform other components when the underlying data source, or its structure, has changed. код начнешь показывать или так и будем сидеть рассуждать?
|
|
|
41
|
Qt / Qt Quick / Re: Перерисовка модели в TreeView с сохранением состояния
|
: Ноябрь 10, 2023, 20:26
|
можно попробовать поменять свойство айтема напрямую через itemAtCell() / itemAtIndex(), но подход с обновлением модели мне кажется более правильным. Как сохранить состояние пунктов — ну ручками и сохранить и в модели возвращать сохраненное состояние для соответствующей роли.
|
|
|
43
|
Qt / Установка, сборка, отладка, тестирование / Re: Помогите с установкой Qt 6.6 на Linux
|
: Ноябрь 06, 2023, 20:10
|
Вот список платформ поддерживаемых Qt. У меня стоит Qt 5.12.12. Для андроида там используется жава машина только 8 версии. И скачивается платформа разработки для андроида 5 версии. И соответственно код компиллируется только для 5 андроида. Я даже не могу запустить эмулятор, так как не могу его скачать. Может есть возможность как писать на Qt 5 для андроидов более высокой версии, скажите пожалуйста. Вот ссылка на список платформ, нашёл бы я его раньше, эх: https://en.wikipedia.org/wiki/List_of_platforms_supported_by_Qtчерез Креатор можно скачать любой андроид сдк. вот описание как всё добро настраивать: https://doc.qt.io/qt-5/android-getting-started.htmlно все-таки очень рекомендую перейти на 5.15.х и собрать под андроид из исходинков. исходники можно скачать из гита без впн, а вот пример сборки: https://github.com/kambala-decapitator/Qt5-iOS-patches#android
|
|
|
|
|