Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: l_a_m от Апрель 12, 2010, 11:27



Название: Проблема с отображением при изменении размера.
Отправлено: l_a_m от Апрель 12, 2010, 11:27
Вкратце расскажу ситуацию, есть основной вертикальный слой, на нём расположены 2 горизонтальных слоя и в верхнем из этих двух, расположены ещё 2 вертикальных слоя. Так вот, мне нужно зафиксировать(что-бы он и все его элементы не могли растягиваться и были "приклеены" к правой части MainLTopLayout) правый слой, а при растяжении основного окна, всё свободное пространство переходило в левый слой. Для простоты понятия, нарисовал схемку.
Код:
QVBoxLayout             mainLayout;
QHBoxLayout             mainTopLayout;
QHBoxLayout             mainBottomLayout;
 
QVBoxLayout             mainTopLeftLayout;
QVBoxLayout             mainTopRightLayout;
 
mainTopLayout.addLayout(&mainTopLeftLayout);
mainTopLayout.addLayout(&mainTopRightLayout);

mainLayout.addLayout(&mainTopLayout);
mainLayout.addLayout(&mainBottomLayout);

Так, же прикладываю 2 слепка экрана, первый до "ресайза", второй - после. собственно не могу сделать что-бы правое поле (которое с TabWidget-ом), было фиксированного размера и "приклеено" к правой части диалога, а всё свободное пространство занимал QListWidget.

Заранее благодарен за "тыканье" носом в нужном направлении.


Название: Re: Проблема с отображением при изменении размера.
Отправлено: BRE от Апрель 12, 2010, 11:41
Заранее благодарен за "тыканье" носом в нужном направлении.
Добавь ui-файл, так будет проще показать.


Название: Re: Проблема с отображением при изменении размера.
Отправлено: l_a_m от Апрель 12, 2010, 12:05
это будет проблематично сделать, т.к. весь пользовательский интерфейс описывается руками (приблуда заказчика). Могу выложить класс в котором описывается сие добро, но думаю таким действием я только ещё больше Вас запутаю :-)


Название: Re: Проблема с отображением при изменении размера.
Отправлено: BRE от Апрель 12, 2010, 12:15
Для начала, установи у QListWidget SizePolicy по вертикали и горизонтали на Expanding.


Название: Re: Проблема с отображением при изменении размера.
Отправлено: kuzulis от Апрель 12, 2010, 12:16
Цитировать
это будет проблематично сделать, т.к. весь пользовательский интерфейс описывается руками (приблуда заказчика)

ну так можнож сделать *.ui, настроить его (попытаться) как нужно - а потом MOC-нуть и вставить готовый код в ваш проект. И заказчик ничего не заподозрит!  :)

так будет проще гораздо понять "нам" в чем дело, имея готовый *.ui - как сказал BRE

т.е сначала поиграться с *.ui нужно - а потом, если получится, аналогичное в коде ручками сделать.

ЗЫ: если я не пишу "пургу" (ИМХО)


Название: Re: Проблема с отображением при изменении размера.
Отправлено: l_a_m от Апрель 12, 2010, 12:25
Цитировать
Для начала, установи у QListWidget SizePolicy по вертикали и горизонтали на Expanding.
Пробовал - не помогает. Есть подозрение, что из-за того, что QListWidget находится в отдельном QVBoxLayout-e.

Цитировать
это будет проблематично сделать, т.к. весь пользовательский интерфейс описывается руками (приблуда заказчика)

ну так можнож сделать *.ui, настроить его (попытаться) как нужно - а потом MOC-нуть и вставить готовый код в ваш проект. И заказчик ничего не заподозрит!  :)

так будет проще гораздо понять "нам" в чем дело, имея готовый *.ui - как сказал BRE

т.е сначала поиграться с *.ui нужно - а потом, если получится, аналогичное в коде ручками сделать.

ЗЫ: если я не пишу "пургу" (ИМХО)

эх)) красиво звучит, но сроки :-( и если честно, то я с ui-шками ещё и не разобрался толком, я с Qt дружу только первый месяц.