gpt4 book ai didi

python - 如何在QDateEdit弹出QCalendarWidget中添加Today按钮

转载 作者:行者123 更新时间:2023-12-01 00:21:11 26 4
gpt4 key购买 nike

像这样的“今天”按钮

我的弹出日历小部件的图像:

Image of my pop-up calendar widget

我正在尝试使用 Python 中的 PyQt5 和日期选择器选项创建简单的 Gui。我需要在弹出的 QCalendarWidget 中的 QDateEdit 中添加“今天”按钮。

最佳答案

必须通过布局将按钮添加到 QCalendarWidget,并在按下按钮时将 QDate::currentDate() 设置为 QCalendarWidget 的 selectedDate:

import sys

from PyQt5 import QtCore, QtWidgets


class DateEdit(QtWidgets.QDateEdit):
def __init__(self, parent=None):
super().__init__(parent, calendarPopup=True)
self._today_button = QtWidgets.QPushButton(self.tr("Today"))
self._today_button.clicked.connect(self._update_today)
self.calendarWidget().layout().addWidget(self._today_button)

@QtCore.pyqtSlot()
def _update_today(self):
self._today_button.clearFocus()
today = QtCore.QDate.currentDate()
self.calendarWidget().setSelectedDate(today)


if __name__ == "__main__":
app = QtWidgets.QApplication(sys.argv)
w = DateEdit()
w.show()
sys.exit(app.exec_())

关于python - 如何在QDateEdit弹出QCalendarWidget中添加Today按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58959425/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com