Показывает, когда в Qt была нажата кнопка - PullRequest
1 голос
/ 20 августа 2011

Я использую Qt с C ++ и хочу сделать кнопку, которая будет выглядеть нажатой после нажатия и отпускания.В настоящее время я делаю кнопки на QToolBar и делаю что-то вроде toolBar->addAction (icon, tr("Text"));.Это делает кнопки на панели инструментов, которые отображают QIcon с именем icon и отображают «Текст» при наведении курсора.Они также выглядят сдавленными, когда пользователь нажимает их, но перестают выглядеть сдавленными, когда они отпущены (что разумно для большинства применений кнопок).Однако мне нужно что-то другое: я бы просто хотел, чтобы кнопки выглядели нажатыми после их отпускания, возможно, до тех пор, пока они не будут нажаты снова.Было бы лучше, если бы я мог просто вызвать некоторую функцию на кнопке или на панели инструментов, которая могла бы дать мне возможность контролировать, будет ли кнопка выглядеть нажатой или нет, когда она отображается.Таким образом, я мог бы просто контролировать этот аспект появления кнопок программно.

Какой самый простой способ сделать это в Qt?Я видел причудливые способы сделать это с использованием границ и очень сложных установок, но мне было интересно, может ли быть простой способ сделать это.

1 Ответ

5 голосов
/ 20 августа 2011

Добавьте QPushButton на панель инструментов, используя addWidget , а затем сделайте кнопку доступной для проверки .

...