crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> особый виджет для данных
novichkov
  опции профиля:
сообщение 25.3.2008, 6:54
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 64
Регистрация: 20.3.2008
Из: Северодвинск
Пользователь №: 128

Спасибо сказали: 6 раз(а)




Репутация:   1  


Подскажите, кто знает, как проще всего реализовать виджет для следующих данных: список элементов, каждый элемент имеет строковый заголовок и свой список строковых элементов. Тип данных реализован в виде класса. Я хотел, чтобы виджет выглядел как на рис.
_________________________
| |___|__|___|___|___|__|
|____|___|__|___|___|___|__|
| |___|__|___|___|___|__|
|____|___|__|___|___|___|__|

то есть слева заголовок, а потом в виде горизонтального списка элементы.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 25.3.2008, 9:01
Сообщение #2


Мастер
******

Группа: Модератор
Сообщений: 3296
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

Спасибо сказали: 231 раз(а)




Репутация:   40  


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

Если я тебя правильно понял.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 25.3.2008, 11:01
Сообщение #3


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Такой вариант:
Использовать в качестве основного виджета - QListWidget, в качестве QListWidgetItem выступает QStringList заполненый на основе данных твоего класса.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
novichkov
  опции профиля:
сообщение 25.3.2008, 19:31
Сообщение #4


Студент
*

Группа: Участник
Сообщений: 64
Регистрация: 20.3.2008
Из: Северодвинск
Пользователь №: 128

Спасибо сказали: 6 раз(а)




Репутация:   1  


Если кто подскажет, как сделать делегата для таблицы в виде списка строк (здесь сойдет горизонтальный список), то я пожалуй реализую QTableView. Проблема в том, что я не смог понять, как работать с представлением модель/вид.

Сегодня сделал свой виджет. Пока он меня мало устраивает - графика в нем так себе, да и поведение внутри QScrollArea странное. Если доделаю, может, выложу исходник.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 26.3.2008, 8:52
Сообщение #5


Мастер
******

Группа: Модератор
Сообщений: 3296
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

Спасибо сказали: 231 раз(а)




Репутация:   40  


Цитата(novichkov @ 25.3.2008, 19:31) *
Проблема в том, что я не смог понять, как работать с представлением модель/вид.
А что именно ты не понимаешь?
Вроде в документации все хорошо написано с примерами как и что делается: Программирование Модель/Представление.
Правда делегаты пока еще не переведены, но думаю это не надолго. :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 26.3.2008, 9:06
Сообщение #6


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


я уже перевожу, т.к. сам читаю :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
novichkov
  опции профиля:
сообщение 26.3.2008, 19:27
Сообщение #7


Студент
*

Группа: Участник
Сообщений: 64
Регистрация: 20.3.2008
Из: Северодвинск
Пользователь №: 128

Спасибо сказали: 6 раз(а)




Репутация:   1  


Сделал виджет, о котором говорил. Размещайте его в QScrollArea, обязательно указывая QScrollArea, что виджет нужно перерисовывать.
Скрин диалогового окна и исходники внутри архива.
Прикрепленные файлы
Прикрепленный файл  RowedList.tar.gz ( 32,17 килобайт ) Кол-во скачиваний: 400
 
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 30.12.2024, 17:37