Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ Qt GUI _ Можно ли как-нить кнопку явно сделать активной?

Автор: Don 30.4.2008, 21:34

Можно ли как-нить кнопку явно сделать активной? Я создаю кнопку так:

QPushButton button("Text", &window);    // прицепливаю кнопку сразу к окну

Но так же на созданном окне (&window) рисуется рисунок, который добовляется к окну так:
QHBoxLayout lay;                    
lay.addWidget(&a);   //а - объект рисунка                
window.setLayout(&lay);

Таким способом у меня кнопка отображается как надо, но вобще не активная, никак не реагирует на нажатия.
Если её добавить к окну так как и рисунрк, то она работает, но засчёт Layout она занимает пол окна перекрывая рисунок, не смотря на указанные
setGeometry().

Как явно сделать кнопку актвной в моём случае?
Можно как-нить отключить в Layout`ах автоматическую компановку компонентов, чтоб все виджеты были на окне и размещались строго по уканным кординатам?

Автор: Litkevich Yuriy 30.4.2008, 22:26

Цитата(' date='1.5.2008, 1:34) *
Можно как-нить отключить в Layout`ах автоматическую компановку компонентов, чтоб все виджеты были на окне и размещались строго по уканным кординатам?

тогда зачем тебе компоновщик (Layout)?
Цитата(' date='1.5.2008, 1:34) *
но вобще не активная

Вот это не понятно :/

чтобы кнопка компоновщиком не растягивалась задай ее максимальный размер и определи поведение в компоновщике:
button.maximumSize(...);
button.sizePolicy(...)

если размеры нужны жесткие, лучше политику задать фиксированную
P.S. см. документацию по этим функциям

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)