Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Jkc от Ноябрь 28, 2005, 23:46



Название: Как поднять вдавленную ToggleButton ?
Отправлено: Jkc от Ноябрь 28, 2005, 23:46
У меня вот какая задача.
Вряд расположены кнопки со свойством ToggleButton true. Когда я одну вдавливаю то всё на форме под кнопками должно поменяться. Как сделать это я знаю, но как по нажатию на другую кнопку поднять предыдущую вдавленную, что то у меня не выходит. Кто знает пожалуйста подскажите.


Название: Как поднять вдавленную ToggleButton ?
Отправлено: QCasper от Ноябрь 29, 2005, 10:00
Создай вектор этих кнопок. И законнекти сигнал текущей кнопки со слотом предыдущей.


Название: Как поднять вдавленную ToggleButton ?
Отправлено: Jkc от Ноябрь 29, 2005, 11:26
А что мне это даст в итоге?
И можно пример?


Название: Как поднять вдавленную ToggleButton ?
Отправлено: zlatko от Ноябрь 29, 2005, 12:28
сохраняй указатель на вдавленую кнопку а потом когда нажимаеш на новую делай button_old->setDown(false);


Название: Как поднять вдавленную ToggleButton ?
Отправлено: Dendy от Ноябрь 29, 2005, 22:19
Я правильно понял? Фактически ето должно работать как радио-кнопки? Ну тогда нет проблем!  :D  Ибо радио от не-радио ничем не отличаются кроме внешнего вида.

Не нужно сохранять никаких указателей, просто ставишь етим кнопкам флаг: autoExclusive

Код:
  button->setAutoExclusive( true );


И кнопки отожмутся сами как миленькие, если родитель у них один.  :wink:


Название: Как поднять вдавленную ToggleButton ?
Отправлено: Jkc от Ноябрь 29, 2005, 22:24
Так не работает
button_old->setDown(false);
..............
а так работает
pushButton10->setOn( FALSE );


Название: Как поднять вдавленную ToggleButton ?
Отправлено: Jkc от Ноябрь 29, 2005, 22:33
: error C2039: 'setAutoExclusive' : is not a mamber of QPushButton'
 :cry:


Название: Как поднять вдавленную ToggleButton ?
Отправлено: Dendy от Ноябрь 30, 2005, 10:14
Интересно, кто-нибудь читает об'явления? Пжалста, указывайте номер версии Qt (2/3/4). По умолчанию для меня все работают в Qt4.

В Qt3 есть похожий параметр: exclusiveToggle, но он только для чтения. Для функционирования авто-отжатия в Qt3 создаёшь кнопки на QButtonGroup и делаешь:

Код:
buttonGroup->setExclusive( true );