PyQt5 QCalendarWidget - Festlegen des Schlüsselfreigabeereignisses
In diesem Artikel erfahren Sie, wie Sie das Key Release-Ereignis für das QCalendarWidget implementieren können. Um das Schlüsselfreigabeereignis festzulegen, müssen wir die keyReleaseEvent-Methode überschreiben. Durch Überschreiben des Schlüsselfreigabeereignisses können wir dem Kalender Funktionen hinzufügen, wenn die gedrückte Taste losgelassen wird. Im Gegensatz zum Tastendruckereignis findet das Tastendruckereignis statt, wenn die gedrückte Taste losgelassen wird. Wir können sagen, dass das erste Tastendruckereignis stattfindet, dann das Freigabeereignis
Implementierungsschritte:
1. Erstellen Sie ein Hauptfenster.
2. Erstellen Sie ein QCalendarWidget.
3. Legen Sie verschiedene Eigenschaften für den Kalender fest.
4.
Überschreiben Sie das keyReleaseEvent. 5. Überprüfen Sie innerhalb der Override-Methode, ob die Escape-Taste gedrückt wurde, und blenden Sie den Kalender aus
Unten ist die Implementierung
from
PyQt5.QtWidgets
import
*
from
PyQt5
import
QtCore, QtGui
from
PyQt5.QtGui
import
*
from
PyQt5.QtCore
import
*
import
sys
class
Window(QMainWindow):
def
__init__(
self
):
super
().__init__()
self
.setWindowTitle(
"Python "
)
self
.setGeometry(
100
,
100
,
650
,
400
)
self
.UiComponents()
self
.show()
def
UiComponents(
self
):
self
.calendar
=
QCalendarWidget(
self
)
self
.calendar.setGeometry(
50
,
10
,
400
,
250
)
self
.calendar.setCursor(Qt.PointingHandCursor)
def
keyReleaseEvent(
self
, e):
if
e.key()
=
=
Qt.Key_Escape:
self
.calendar.hide()
(
"Escape key released Hide the calendar"
)
App
=
QApplication(sys.argv)
window
=
Window()
sys.exit(App.
exec
())
Ausgabe :
Escape-Taste losgelassen Kalender ausblenden