Outils pour utilisateurs

Outils du site


qcheckbox_pyqt4

Case à cocher: QCheckBox

Créer un checkbox

checkBox = QtGui.QCheckBox(u"Case à cocher", parent)

Initialiser le checkBox

checkBox.setChecked(False)  # retire la coche
checkBox.setChecked(True)  # met la coche

Tester l'état du checkBox

etat = checkBox.isChecked() # donne True si coché et False sinon

Déclencher un évènement à chaque changement d'état

QtCore.QObject.connect(checkBox, QtCore.SIGNAL('stateChanged(int)'), change) 
def change(self):
    if self.checkBox.isChecked():
        ...
    else:
        ...

Petit code test

#!/usr/bin/python
# -*- coding: utf-8 -*-
from __future__ import division
 
import sys
from PyQt4 import QtCore, QtGui
 
class Fenetre(QtGui.QWidget):
    def __init__(self, parent=None):
        super(Fenetre, self).__init__(parent)
        self.setWindowTitle("Code test")
 
        # créer le checkBox
        self.checkBox = QtGui.QCheckBox(u"Case à cocher", self)
 
        # initialiser le checkBox à 'non coché'
        self.checkBox.setChecked(False)
 
        # faire que chaque modification du checkBox exécute la méthode 'change'
        QtCore.QObject.connect(self.checkBox, QtCore.SIGNAL('stateChanged(int)'), self.change) 
 
        # création d'une ligne d'édition
        self.lineEdit = QtGui.QLineEdit(self)
 
        # positionnement des widgets dans la fenêtre
        posit = QtGui.QGridLayout()
        posit.addWidget(self.checkBox, 0, 1)
        posit.addWidget(self.lineEdit, 1, 0, 1, 3)
        self.setLayout(posit)
 
    def change(self, nb):
        """méthode exécutée à chaque changement des radioboutons"""
        if self.checkBox.isChecked():
            self.lineEdit.setText(u"coché")
        else:
            self.lineEdit.setText(u"non coché")
 
if __name__ == "__main__":
    app = QtGui.QApplication(sys.argv)
    QtGui.QApplication.setStyle(QtGui.QStyleFactory.create('plastique'))
    fen = Fenetre()
    fen.show()
    sys.exit(app.exec_())
qcheckbox_pyqt4.txt · Dernière modification: 2010/09/24 21:20 par tyrtamos

Outils de la page