Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: xTr1m от Декабрь 16, 2010, 11:22



Название: Кнопки разной ширины в горизонтальном Layout
Отправлено: xTr1m от Декабрь 16, 2010, 11:22
Доброго времени суток. В Qt Creator в дизайнере есть окно. На это окно я расположил горизонтальный layout. В нем 3 кнопки и горизонтальный спейсер. Проблема в том, что мне нужно, чтобы кнопки были разной ширины, но свойство geometry у них задизаблено. Пробовал изменять атрибуты спейсера и горизонтального layout'а, ничего не получилось. Может я в корне не верно подошел к решению проблемы? (Помимо кнопок на диалоге есть есть компоненты, но они все снизу) Спасибо.


Название: Re: Кнопки разной ширины в горизонтальном Layout
Отправлено: ltise от Декабрь 16, 2010, 14:32
Используй minimumSize - поставь width необходимое значение.
Еще может быть полезно потыкать sizePolicy


Название: Re: Кнопки разной ширины в горизонтальном Layout
Отправлено: xTr1m от Декабрь 16, 2010, 14:57
спасибо, но minimumSize - это чье свойство?. ставил у layout и спейсера - не помогло. свойство width у кнопок недоступно (задизаблено)


Название: Re: Кнопки разной ширины в горизонтальном Layout
Отправлено: ltise от Декабрь 16, 2010, 18:47
Вообще у QWidget, в данном случае, нужно установить требуемый размер у кнопки.
т.е. минимальный необходимый размер кнопки, и  никакой лайаут менеджер ее не ужмет.
можешь в коде setMinimumWidth() или внимательно посмотри в свойствах кнопки в дизайнере, там тоже есть


Название: Re: Кнопки разной ширины в горизонтальном Layout
Отправлено: Fat-Zer от Декабрь 16, 2010, 19:36
Вообще лучше каждой кнопке свой QVBoxLayout и придавить её спейсером


Название: Re: Кнопки разной ширины в горизонтальном Layout
Отправлено: xTr1m от Декабрь 17, 2010, 13:48
Я так понимаю, что совет ltise больше относится к программному решению. Fat-Zer, попробую, так как это все же в редакторе дизанера