Russian Qt Forum
Ноябрь 22, 2024, 16:52
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Model-View (MV)
>
[РЕШЕНО]Создание модели на основе QAbstractTableView
Страниц:
1
2
[
3
]
4
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: [РЕШЕНО]Создание модели на основе QAbstractTableView (Прочитано 29212 раз)
Bepec
Гость
Re: Создание модели на основе QAbstractTableView
«
Ответ #30 :
Март 25, 2016, 18:18 »
Там где то в разделе работа форума есть темка для связи. Напиши туда, мб поменяют или вышлют. Тут какая то засада с письмами
Записан
Larry
Гость
Re: Создание модели на основе QAbstractTableView
«
Ответ #31 :
Март 25, 2016, 18:22 »
Спасибо. На выходных переделаю загрузку данных и отпишусь.
Записан
Larry
Гость
Re: Создание модели на основе QAbstractTableView
«
Ответ #32 :
Март 27, 2016, 14:41 »
Спасибо. Переделал загрузку и все теперь работает. Остается вопрос - как подогнать размеры ячеек? Пробовал через делегат, но чтобы работал sizeHint надо опять же вызывать
Код:
resizeColumnsToContents()
и
Код:
resizeRowsToContents()
.
Записан
Bepec
Гость
Re: Создание модели на основе QAbstractTableView
«
Ответ #33 :
Март 27, 2016, 15:22 »
Зависит от задачи как бы... Вы вот приведите условия для размеров ячеек и мы вам ответим
PS по идее у вас все ячейки статичные должны быть. Никаких "разных" размеров быть не должно.
Записан
Larry
Гость
Re: Создание модели на основе QAbstractTableView
«
Ответ #34 :
Март 27, 2016, 15:45 »
у меня в двух первых колонках текст и размер соответственно должен меняться под длину текста, а в остальных иконки 16х16.
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Создание модели на основе QAbstractTableView
«
Ответ #35 :
Март 27, 2016, 16:53 »
Цитата: Larry от Март 27, 2016, 15:45
у меня в двух первых колонках текст и размер соответственно должен меняться под длину текста, а в остальных иконки 16х16.
Тут надо как бы "наоборот": для иконок ставите setSectionResizeMode(QHeaderView::Fixed), для остальных QHeaderView::Stretch. И лучше перед этим сделать setStretchLastSection(false)
Записан
Larry
Гость
Re: Создание модели на основе QAbstractTableView
«
Ответ #36 :
Март 27, 2016, 17:01 »
Спасибо большое, попробую.
Записан
Larry
Гость
Re: Создание модели на основе QAbstractTableView
«
Ответ #37 :
Март 28, 2016, 08:51 »
Попробовал, но размеры остались прежними...
Записан
Larry
Гость
Re: Создание модели на основе QAbstractTableView
«
Ответ #38 :
Март 28, 2016, 09:05 »
попробовал QHeaderView::resizeToContents и программа начала тупо висеть...
Записан
Bepec
Гость
Re: Создание модели на основе QAbstractTableView
«
Ответ #39 :
Март 28, 2016, 11:13 »
Вы б поменьше Igors слушали
Он силён в графике,не спорю, но тут не красные штаны
У вас простая ситуация - 2к записей обновляющихся. В любом из предложенных Igors вариантов, каждое обновление вызывает реакцию проверки длины. Вам же нужно убрать эту зависимость.
Самый простой способ - задать фиксированные размеры столбцов. 1 колонка - 8 цифр(99999999), 2 колонка - максимум 10 знаков(9999км/час), остальные по размеру иконки, 16*16 допустим. И проблема исчезнет.
Записан
Larry
Гость
Re: Создание модели на основе QAbstractTableView
«
Ответ #40 :
Март 28, 2016, 11:23 »
Вторая колонка, там где скорость, то можно установить фиксированный размер, а вот первая может быть 5 цифр (по умолчанию), а может быть и строка, а забить статически количество символов не очень хорошо
. А через делегаты можно решить эту проблему? Если через sizeHint, то опять же приходится вызывать resizeColumnsToContents.
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Создание модели на основе QAbstractTableView
«
Ответ #41 :
Март 28, 2016, 11:23 »
Цитата: Bepec от Март 28, 2016, 11:13
Вы б поменьше Igors слушали
Он силён в графике,не спорю, но тут не красные штаны
Цитировать
Ну ничего, мы себя в табличках покажем-с
Цитата: Larry от Март 28, 2016, 08:51
Попробовал, но размеры остались прежними...
Меланхолия и смирение здесь неуместны
Выкладывайте тестовый проект - быстрее дело будет
Записан
Larry
Гость
Re: Создание модели на основе QAbstractTableView
«
Ответ #42 :
Март 28, 2016, 11:32 »
сейчас подготовлю и выложу.
Записан
Larry
Гость
Re: Создание модели на основе QAbstractTableView
«
Ответ #43 :
Март 28, 2016, 11:39 »
Это тот же, что и выкладывал перед этим.
Записан
Bepec
Гость
Re: Создание модели на основе QAbstractTableView
«
Ответ #44 :
Март 28, 2016, 14:15 »
Тогда самое простое - написать свой делегат. Потому что "подбирать общий размер строки" для всех 2к + строк - это бред
Хотя конечно можно посмотреть неэлегантные решения, типо смещения колонок (допустим изменяемую колонку в конец зафигачить) и никаких проблем.
Ммм... а насчёт подбирать размер строки - может и сработать. Если хранить наибольший размер в модельке, при изменении данных проверять на увеличение и заменять. Вполне может сработать
Записан
Страниц:
1
2
[
3
]
4
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...