Полная версия этой страницы:
особый виджет для данных
novichkov
25.3.2008, 6:54
Подскажите, кто знает, как проще всего реализовать виджет для следующих данных: список элементов, каждый элемент имеет строковый заголовок и свой список строковых элементов. Тип данных реализован в виде класса. Я хотел, чтобы виджет выглядел как на рис.
_________________________
| |___|__|___|___|___|__|
|____|___|__|___|___|___|__|
| |___|__|___|___|___|__|
|____|___|__|___|___|___|__|
то есть слева заголовок, а потом в виде горизонтального списка элементы.
Может попробовать
QGridLayout?
Или еще какой лайоут, с вложенными в него лайоутами, а уже на них создавать те, что тебе нужно виджеты.
Или табличку, в ячейках которой создавать нужные виджеты.
Если я тебя правильно понял.
Litkevich Yuriy
25.3.2008, 11:01
Такой вариант:
Использовать в качестве основного виджета - QListWidget, в качестве QListWidgetItem выступает QStringList заполненый на основе данных твоего класса.
novichkov
25.3.2008, 19:31
Если кто подскажет, как сделать делегата для таблицы в виде списка строк (здесь сойдет горизонтальный список), то я пожалуй реализую QTableView. Проблема в том, что я не смог понять, как работать с представлением модель/вид.
Сегодня сделал свой виджет. Пока он меня мало устраивает - графика в нем так себе, да и поведение внутри QScrollArea странное. Если доделаю, может, выложу исходник.
Цитата(novichkov @ 25.3.2008, 19:31)
Проблема в том, что я не смог понять, как работать с представлением модель/вид.
А что именно ты не понимаешь?
Вроде в документации все хорошо написано с примерами как и что делается:
Программирование Модель/Представление.
Правда делегаты пока еще не переведены, но думаю это не надолго.
Litkevich Yuriy
26.3.2008, 9:06
я уже перевожу, т.к. сам читаю
novichkov
26.3.2008, 19:27
Сделал виджет, о котором говорил. Размещайте его в QScrollArea, обязательно указывая QScrollArea, что виджет нужно перерисовывать.
Скрин диалогового окна и исходники внутри архива.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.