📜  PyQt5 QDateTimeEdit – 获取包装属性(1)

📅  最后修改于: 2023-12-03 14:45:48.740000             🧑  作者: Mango

PyQt5 QDateTimeEdit – 获取包装属性

PyQt5 QDateTimeEdit控件是一个用于展示和编辑日期时间的用户界面控件。它可以让用户输入日期和时间,同时也可以让用户通过点击上下箭头修改日期时间。本篇文章将介绍如何获取PyQt5 QDateTimeEdit的包装属性。

获取包装属性

包装属性是指Qt中QDate和QTime类型的值将如何被解释为一个QDateTime值。 当我们在创建一个QDateTimeEdit控件的时候,我们可以指定包装属性。一般有三种包装方式:

  1. QDateEdit:显示日期,并且时间被显示为12:00:00 AM。
  2. QTimeEdit:显示时间,并且日期被显示为1/1/1900。
  3. QDateTimeEdit:同时显示日期和时间。

获取QDateTimeEdit包装属性我们需要调用QDateTimeEditwrapping属性。它将返回当前的包装方式,默认值为QDateTimeEdit.NoWrap

# importing required libraries
from PyQt5.QtWidgets import *
from PyQt5 import QtCore, QtGui
import sys
 
 
class Window(QMainWindow):
    def __init__(self):
        super().__init__()
 
        # setting title
        self.setWindowTitle("Python ")
 
        # setting geometry
        self.setGeometry(100, 100, 600, 400)
 
        # calling method
        self.UiComponents()
 
        # showing all the widgets
        self.show()
 
    # method for widgets
    def UiComponents(self):
 
        # creating a QDateTimeEdit widget
        edit = QDateTimeEdit(self)
 
        # setting geometry of the QDateTimeEdit
        edit.setGeometry(200, 100, 250, 40)
 
        # enabling calendar popup
        edit.setCalendarPopup(True)
 
        # Setting default wrapping mode
        edit.setWrapping(QDateTimeEdit.NoWrap)
 
        # creating a push button
        button = QPushButton("Get Wrapping Property", self)
 
        # setting geometry to push button
        button.setGeometry(200, 200, 200, 40)
 
        # adding action to push button
        button.clicked.connect(lambda: self.getWrap(edit))
 
    # method called by push button
    def getWrap(self, edit):
 
        # getting current wrapping attribute
        wrap = edit.wrapping()
 
        # showing message box
        QMessageBox.information(self, "Wrap Property", f"Current wrapping value: {wrap}")
 
 
# create pyqt5 app
App = QApplication(sys.argv)
 
# create the instance of our Window
window = Window()
 
# start the app
sys.exit(App.exec())

这个例子显示了如何创建具有默认包装属性(NoWrap)的QDateTimeEdit控件,并通过QPushButton连接到实现getWrap方法的信号,以便在单击按钮时获取包装属性。getWrap方法将wrapping属性作为字符串返回,并使用QMessageBox将其显示为对话框。

输出

结果将显示当前的包装属性。根据此示例,包装属性的值应该是"NoWrap"。此值是QDateTimeEdit控件的默认包装属性。

PyQt5-QDateTimeEdit-获取包装属性