PyQt5 Tutorial - Taster
Das Drucktasten-Widget QPushButton ist eine Befehlsschaltfläche in PyQt5. Es wird vom Benutzer angeklickt, um dem PC bestimmte Aktionen wie Apply, Cancel und Save zu befehlen.
PyQt5 Taster - QPushButton
import sys
from PyQt5 import QtWidgets
def basicWindow():
app = QtWidgets.QApplication(sys.argv)
windowExample = QtWidgets.QWidget()
buttonA = QtWidgets.QPushButton(windowExample)
labelA = QtWidgets.QLabel(windowExample)
buttonA.setText("Click!")
labelA.setText("Show Label")
windowExample.setWindowTitle("Push Button Example")
buttonA.move(100, 50)
labelA.move(110, 100)
windowExample.setGeometry(100, 100, 300, 200)
windowExample.show()
sys.exit(app.exec_())
basicWindow()
Wo,
buttonA = QtWidgets.QPushButton(windowExample)
buttonA ist der QPushButton von QtWidgets und sollte dem Fenster windowExample genauso hinzugefügt werden wie in den letzten Kapiteln eingeführte Beschriftungen.
buttonA.setText("Click!")
Es setzt den Text von SchaltflächeA auf Click!.

Es wird eigentlich gar nichts bringen.
PyQt5 QLabel Label Widget Set Style
Der Stil des PyQt5 QLabel Widgets wie Hintergrundfarbe, Schriftfamilie und Schriftgröße kann mit der setStyleSheet Methode eingestellt werden. Sie funktioniert wie ein Stylesheet in CSS.
buttonA.setStyleSheet(
"background-color: red;font-size:18px;font-family:Times New Roman;"
)
Es setzt buttonA mit den folgenden Stilen,
| Stil | Wert |
|---|---|
background-color |
rot |
font-size |
18px |
font-family |
Times New Roman |
Es ist bequem, die Stile in PyQt5 zu setzen, da es ähnlich wie CSS ist.
import sys
from PyQt5 import QtWidgets
def basicWindow():
app = QtWidgets.QApplication(sys.argv)
windowExample = QtWidgets.QWidget()
buttonA = QtWidgets.QPushButton(windowExample)
labelA = QtWidgets.QLabel(windowExample)
buttonA.setStyleSheet(
"background-color: red;font-size:18px;font-family:Times New Roman;"
)
buttonA.setText("Click!")
labelA.setText("Show Label")
windowExample.setWindowTitle("Push Button Example")
buttonA.move(100, 50)
labelA.move(110, 100)
windowExample.setGeometry(100, 100, 300, 200)
windowExample.show()
sys.exit(app.exec_())
basicWindow()

PyQt5 QLabel Label Click Event
Das Button-Click-Ereignis ist mit einer bestimmten Funktion mit der Methode QLabel.clicked.connect(func) verbunden.
import sys
from PyQt5 import QtWidgets
class Test(QtWidgets.QMainWindow):
def __init__(self):
QtWidgets.QMainWindow.__init__(self)
self.buttonA = QtWidgets.QPushButton("Click!", self)
self.buttonA.clicked.connect(self.clickCallback)
self.buttonA.move(100, 50)
self.labelA = QtWidgets.QLabel(self)
self.labelA.move(110, 100)
self.setGeometry(100, 100, 300, 200)
def clickCallback(self):
self.labelA.setText("Button is clicked")
if __name__ == "__main__":
app = QtWidgets.QApplication(sys.argv)
test = Test()
test.show()
sys.exit(app.exec_())
Wenn der QPushButton ButtonA angeklickt wird, löst er die Funktion clickCallback aus, um den Labeltext zu setzen, der Button is clicked sein soll.
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn Facebook