Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: vvvmag от Ноябрь 26, 2008, 08:59



Название: QSplitter как зафиксировать размер виджета входящего в него
Отправлено: vvvmag от Ноябрь 26, 2008, 08:59
Ситуация следующая
имеется VerticalLayout в котором установлены несколько виджетов.
также имеется сплитте в который входит этот Layout и 2 списка

Я хочу запретить изменять размер для Layout но не знаю как это сделать.

пробовал не добавлять в Layout сплиттер, но тогда начинается разъезд виджетов по форме - вобщем некрасиво.

поэтому хочется узнать именно как запретить изменять размер одной из секций сплиттера


Название: Re: QSplitter как зафиксировать размер виджета входящего в него
Отправлено: Rcus от Ноябрь 26, 2008, 10:17
QSplitter нужен именно для того чтобы можно было изменять размеры layout'ов в него входящих. В вашем же случае думаю поможет скорее Spacer


Название: Re: QSplitter как зафиксировать размер виджета входящего в него
Отправлено: vvvmag от Ноябрь 26, 2008, 14:00
Я нашел решение вопроса.

QSplitter* splt;
QWidget* widg;
widg =  splt->widget(index);
widg->setFixedWidth(width);


Название: Re: QSplitter как зафиксировать размер виджета входящего в него
Отправлено: pastor от Ноябрь 26, 2008, 14:48
А зачем отгда сплиттер?


Название: Re: QSplitter как зафиксировать размер виджета входящего в него
Отправлено: vvvmag от Ноябрь 27, 2008, 09:09
на главном окне расположено три виджета
первый который надо зафиксировать это Layout(не виджет, но содержит в себе несколько виджетов) список и текст эдит. мне было нужно сделать чтобы менялось соотношение размеров между списком и текст эдитом. Настроить Layout так чтобы сплиттер был только между ними двумя не получилось (надо еще чтобы при изменении окна изменялся пропорционально размер всех трех "панелей"), поэтому я поставил сплиттер, но менять соотношение размеров между первой панелью и списком мне не нужно вот я и искал способ зафиксировать размер.


P.S. думаю тему можно удалять.