PyQt5 QDateEdit – 时间改变的信号
在这篇文章中,我们将看到我们如何获得QDateEdit的时间变化信号。与普通的日期不同,我们可以在setDateTime方法的帮助下为它设置日期时间。但是我们也可以通过setTime方法的帮助只设置时间而不改变日期。每当日期编辑的时间被改变时,这个信号就会被发射出来。
为了达到这个目的,我们使用QDateEdit对象的timeChanged方法。
语法: date.timeChanged.connect(method)
参数: 它以方法作为参数。
返回: 它返回无。
下面是实现方法
# importing libraries
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__()
# setting title
self.setWindowTitle("Python ")
# setting geometry
self.setGeometry(100, 100, 500, 400)
# calling method
self.UiComponents()
# showing all the widgets
self.show()
# method for components
def UiComponents(self):
# creating a QDateEdit widget
date = QDateEdit(self)
# setting geometry of the date edit
date.setGeometry(100, 100, 150, 40)
# creating a label
label = QLabel("GeeksforGeeks", self)
# setting geometry
label.setGeometry(100, 150, 200, 60)
# making label multiline
label.setWordWrap(True)
# time change signal
date.timeChanged.connect(lambda: method())
# method called when signal emitted
def method():
# setting text to the label
label.setText("Time Changed Signal")
# date time
time = QTime(11, 20, 0)
# setting time
date.setTime(time)
# create pyqt5 app
App = QApplication(sys.argv)
# create the instance of our Window
window = Window()
# start the app
sys.exit(App.exec())
输出 :