QRadioButton
Op deze pagina:
een radioknop is een instantie vand e QRadioButton class.
Een radioknop is een onderdeel van een meerkeuzemenu waarbij steeds slechts één keuze tegelijk geseleceteerd kan zijn.
Een ampersand (&) in de naam van de radioknop geeft de sneltoets aan (in combinatie met de Alt-toets).
De letter van de sneltoets wordt onderstreept als je de Alt-toets ingedrukt houdt.
Een radioknop kan zowel tekst als een icon bevatten.
Een radioknop heeft de volgende signalen:
- toggled()
- als de status van de radioknop wisselt van aan naar uit of andersom
- clicked()
- als de knop geactiveerd wordt door een muisklik of de sneltoets
- stateChanged()
- als de status van de radioknop wisselt van aan naar uit of andersom
Voorbeeld:
#!/usr/bin/python3
# -*- coding: utf-8 -*-
'''
QRadioButton
'''
from PyQt5 import QtGui
from PyQt5.QtWidgets import QApplication
from PyQt5.QtWidgets import QMainWindow
from PyQt5.QtWidgets import QLabel
from PyQt5.QtWidgets import QRadioButton
import sys
class Window(QMainWindow):
def __init__(self):
super().__init__()
self.title = "PyQt5 QRadioButton"
self.top = 100
self.left = 100
self.width = 300
self.height = 200
# icon.png is de icon voor rechtsboven in het venster,
# dit plaatje wordt automatisch verkleind
self.setWindowIcon(QtGui.QIcon("icon.png"))
self.InitWindow()
self.keuze1.toggled.connect(self.toonkleur)
self.keuze2.toggled.connect(self.toonkleur)
self.keuze3.toggled.connect(self.toonkleur)
def InitWindow(self):
self.setWindowTitle(self.title)
self.setGeometry(self.top, self.left, self.width, self.height)
self.label = QLabel('Selecteer een kleur', self)
self.label.move(10,150)
self.label.resize(200,30)
self.keuze1 = QRadioButton('&Rood', self)
self.keuze1.move(10,10)
self.keuze2 = QRadioButton('&Wit', self)
self.keuze2.move(10,50)
self.keuze3 = QRadioButton('&Blauw', self)
self.keuze3.move(10,90)
self.show()
def toonkleur(self):
kleur = ''
if self.keuze1.isChecked() == True:
kleur = 'Rood'
if self.keuze2.isChecked() == True:
kleur = 'Wit'
if self.keuze3.isChecked() == True:
kleur = 'Blauw'
kleurkeuze = 'De geselecteerde kleur is: ' + kleur
self.label.setText(kleurkeuze)
App = QApplication(sys.argv)
window = Window()
sys.exit = (App.exec())