想要实现的界面效果
增加Tab Widge的页签
在MainWindow窗口中选中水平布局,将一个Label控件和一个默认自带两个页签的Tab Widget控件放到水平布局中,Tab Widget控件右键选择“插入页”再选择“在当前页之后”增加页签。
为每一个Tab页签界面都选择“栅格布局”
要想实现控件大小随着窗口大小变化,在控件布局都ok的情况下,为每一个Tab页签界面都选择“栅格布局”可以实现控件大小随着窗口大小变化功能。
dateEdit控件勾选CalendarPopup设置选择日历查看
如果不选择CalendarPopup属性为True,则日期控件dateEdit必须手动输入对应日期,选择CalendarPopup属性为True后,出现日历样式的界面可以直接翻页点击对应日期,更加直观方便。
关键代码:
# 此处代码作用为下拉显示日历
self.dateTimeEdit.setCalendarPopup(True)
在PyQt5中使dateEdit不显示时间只显示日期
在PyQt5中,如果QDateEdit只显示日期而不显示时间,你可以通过设置其显示的日期格式来实现。你可以使用QDateEdit.setDisplayFormat()方法来指定显示的格式,如果你想只显示日期,可以设置格式为"yyyy-MM-dd"。
关键代码:
# 设置日期格式为 "yyyy-MM-dd",只显示日期
date_edit.setDisplayFormat("yyyy-MM-dd")
下面是一个简单的例子,演示如何设置QDateEdit只显示日期:
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QDateEdit, QVBoxLayout
from PyQt5.QtCore import QDate
class DateEditExample(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
# 创建一个QDateEdit对象
date_edit = QDateEdit(QDate.currentDate(), self)
# 设置日期格式为 "yyyy-MM-dd",只显示日期
date_edit.setDisplayFormat("yyyy-MM-dd")
# 创建一个垂直布局
v_layout = QVBoxLayout()
v_layout.addWidget(date_edit)
# 设置窗口的布局
self.setLayout(v_layout)
# 设置窗口的标题
self.setWindowTitle('QDateEdit Example')
# 设置窗口的大小
self.setGeometry(300, 300, 250, 150