Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: особый виджет для данных
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt GUI
novichkov
Подскажите, кто знает, как проще всего реализовать виджет для следующих данных: список элементов, каждый элемент имеет строковый заголовок и свой список строковых элементов. Тип данных реализован в виде класса. Я хотел, чтобы виджет выглядел как на рис.
_________________________
| |___|__|___|___|___|__|
|____|___|__|___|___|___|__|
| |___|__|___|___|___|__|
|____|___|__|___|___|___|__|

то есть слева заголовок, а потом в виде горизонтального списка элементы.
ViGOur
Может попробовать QGridLayout?
Или еще какой лайоут, с вложенными в него лайоутами, а уже на них создавать те, что тебе нужно виджеты.
Или табличку, в ячейках которой создавать нужные виджеты.

Если я тебя правильно понял.
Litkevich Yuriy
Такой вариант:
Использовать в качестве основного виджета - QListWidget, в качестве QListWidgetItem выступает QStringList заполненый на основе данных твоего класса.
novichkov
Если кто подскажет, как сделать делегата для таблицы в виде списка строк (здесь сойдет горизонтальный список), то я пожалуй реализую QTableView. Проблема в том, что я не смог понять, как работать с представлением модель/вид.

Сегодня сделал свой виджет. Пока он меня мало устраивает - графика в нем так себе, да и поведение внутри QScrollArea странное. Если доделаю, может, выложу исходник.
ViGOur
Цитата(novichkov @ 25.3.2008, 19:31) *
Проблема в том, что я не смог понять, как работать с представлением модель/вид.
А что именно ты не понимаешь?
Вроде в документации все хорошо написано с примерами как и что делается: Программирование Модель/Представление.
Правда делегаты пока еще не переведены, но думаю это не надолго. :)
Litkevich Yuriy
я уже перевожу, т.к. сам читаю :)
novichkov
Сделал виджет, о котором говорил. Размещайте его в QScrollArea, обязательно указывая QScrollArea, что виджет нужно перерисовывать.
Скрин диалогового окна и исходники внутри архива.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2021 IPS, Inc.