Comment faire pour obtenir l'objet d'une radiobutton à partir d'une zone en pyqt
J'ai une zone de groupe avec certains composants radiobutton. Comment puis-je obtenir à connaître celui qui est cochée.
OriginalL'auteur user2473145 | 2013-07-01
Vous devez vous connecter pour publier un commentaire.
Une autre façon est d'utiliser des groupes de boutons. Par exemple:
J'ai trouvé plus d'informations sur:
http://codeprogress.com/python/libraries/pyqt/showPyQTExample.php?index=387&key=QButtonGroupClick
http://www.pythonschool.net/pyqt/radio-button-widget/
OriginalL'auteur Alex
vous aurez besoin pour itérer sur tous les boutons de la radio dans la zone de groupe et de vérifier la propriété
isChecked()
de chaque radiobox.par exemple:
de référence, vérifier http://pyqt.sourceforge.net/Docs/PyQt4/qradiobutton.html
Utiliser try et catch dans l'itération de 0 à grand nombre, vous devez interrompre la boucle lorsque vous obtenez la case est cochée et d'intercepter l'exception si la case n'existe pas.
OriginalL'auteur scottydelta
J'ai réussi à contourner ce problème en utilisant une combinaison de l'indice et de la boucle.
self.ButtonGroup.checkedId()
?En quelque sorte, qui n'a pas fonctionné pour moi quand il y avait plusieurs groupes de boutons. J'ai gardé l'obtention des inscriptions telles que -4,-3, etc 🙁
Cela n'arrivera que si vous ne définissez pas un ID lors de l'ajout de boutons. Ajoutez donc comme ceci:
self.ButtonGroup.addButton(button, index)
.Qui fonctionne parfaitement! Merci!
OriginalL'auteur Oxymoron88
OriginalL'auteur izz_k