Je veux implémenter quelque chose de similaire à Ruban UI trouvé dans MS Office 2007. J'utilise QPushbutton
et QStacked Widget
. Lorsqu'un QPushbutton
est pressé, widget
de Stacked Widget
est affiché. Je veux mettre en œuvre de telle sorte que quand un PushButton
est enfoncé nous ne devrions pas être en mesure d'appuyer à nouveau sauf si un autre QPushButton
est pressé. Donc pour le clicked()
SLOT
de mon QPushButton
J'appelle ceci: button->setDown(true);
dans ma 1ère ligne. Selon la documentation:Bug possible dans QPushbutton?
Si cette propriété est true, le bouton est enfoncé. Les signaux pressed() et clicked() ne sont pas émis si vous définissez cette propriété sur true.
Ainsi, lorsque je clique dessus au moment de l'exécution, le bouton est affiché comme enfoncé. C'est bon! Cependant, les SIGNAL
sont toujours émis, c'est-à-dire que pressed()
& clicked()
sont émis. J'ai essayé pour la même propriété en utilisant différentes combinaisons de SIGNAL
& SLOT
. Cependant c'est juste pareil. J'utilise Qt 4.8.1. Qu'est-ce qui ne va pas ici? Merci.
On dirait que vous voulez vraiment désactiver le contrôle? – paulm
s'il doit rester en bas il devrait être vérifiable aussi (ou vous aurez juste un bouton avec l'aspect visuel d'un pressé ...) –
@Adriano Je veux l'aspect visuel d'être enfoncé oui. Je veux aussi qu'il ne devrait pas émettre les signaux mentionnés ci-dessus selon la documentation. En ce qui concerne checkable, je pense que QPushButton n'a pas cette propriété? Corrigez-moi si je me trompe ... –