Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: terrrible от Июня 01, 2011, 16:05



Название: динамический список в QListWidget
Отправлено: terrrible от Июня 01, 2011, 16:05
Не могу придумать как мне реализовать такой механизм:
у меня есть QListWidget, каждый элемент этого списка QListWidgetItem - большой, состоящий из кучи кнопок, лэйаутов и разных других полей, элемент.
Вариант создать функцию, которая будет конструировать такой элемент, конечно есть, но выльется у меня в большие временные затраты.
Очень хочется этот элемент списка создать в qt дизайнере и потом его подгружать в нужный момент.
Это возможно?
Пишу это всё на PyQt.


Название: Re: динамический список в QListWidget
Отправлено: GreatSnake от Июня 01, 2011, 18:05
см. QUiLoader


Название: Re: динамический список в QListWidget
Отправлено: terrrible от Июня 01, 2011, 18:23
см. QUiLoader

Спасибо, буду пробовать.


Название: Re: динамический список в QListWidget
Отправлено: terrrible от Июня 03, 2011, 12:32
в документации PyQt сказано юзать вместо QUiloader - uic
У меня это получается так:
Код
Python
...
self.ui = uic.loadUi('my_ui_file.ui', self)
item = self.listWidgetMain.item(i)
item.setSizeHint(self.ui.groupBox.sizeHint())
self.listWidgetMain.setItemWidget(item, self.ui.groupBox)
...
 
Всё как бы работает, но self.ui.groupBox.sizeHint() возвращает -1, -1 поэтому в моём списке item получается пустым.
Как правильно установить размер для item, чтобы он устанавливался таким, каким я определил, например, свой groupBox элемент в моём .ui - файле?


Название: Re: динамический список в QListWidget
Отправлено: GreatSnake от Июня 03, 2011, 12:40
попробуй после загрузки .ui вызвать
self.ui.groupBox.adjustSize()


Название: Re: динамический список в QListWidget
Отправлено: terrrible от Июня 03, 2011, 12:45
попробуй после загрузки .ui вызвать
self.ui.groupBox.adjustSize()


не помогло, так же (-1, -1)


Название: Re: динамический список в QListWidget
Отправлено: GreatSnake от Июня 03, 2011, 12:47
a self.ui.groupBox.size()?


Название: Re: динамический список в QListWidget
Отправлено: terrrible от Июня 03, 2011, 12:59
a self.ui.groupBox.size()?
супер, спасибо!