• PyQt5 控件学习(一个一个学习之QDateTimeEdit)


    QDateTimeEdit 的继承图 :

    之前已经学了两个步长调节器,一个是调节整型,一个是针对浮点型的。

    下面看第三个 QDateTimeEdit 

    QDateTimeEdit 的描述:

    它主要是处理日期时间的步长调节器的!

    QDateTimeEdit 的继承 :

    它继承于 QAbstractSpinBox 的 。

    QDateTimeEdit 的功能作用 :

    QDateTimeEdit 的功能作用之构造函数:

    第一个构造函数:

    from PyQt5.Qt import * #刚开始学习可以这样一下导入
    import sys
    
    class Window(QWidget):
        def __init__(self):
            super().__init__()
            self.setWindowTitle("QDateTimeEdit  的学习")
            self.resize(400,400)
            self.set_ui()
    
    
        def set_ui(self):
            dateTimeEdit = QDateTimeEdit(self)
            dateTimeEdit.resize(100,30)
            dateTimeEdit.move(100,100)
    
    
    if __name__ == '__main__':
        app =QApplication(sys.argv)
    
        window = Window()
        window.show()
    
        sys.exit(app.exec_())
    View Code

    最大和最小时间:

    其他的构造函数:

    先补充:

    日期时间的学习:https://www.cnblogs.com/zach0812/p/11387870.html

    from PyQt5.Qt import * #刚开始学习可以这样一下导入
    import sys
    
    class Window(QWidget):
        def __init__(self):
            super().__init__()
            self.setWindowTitle("QDateTimeEdit 的学习")
            self.resize(400,400)
            self.set_ui()
    
    
        def set_ui(self):
            dateTimeEdit = QDateTimeEdit(QDateTime.currentDateTime(),self)
            # dateTimeEdit = QDateTimeEdit(QDate.currentDate(),self)
            # dateTimeEdit = QDateTimeEdit(QTime.currentTime(),self)
            dateTimeEdit.resize(150,30)
            dateTimeEdit.move(100,100)
    
    if __name__ == '__main__':
        app =QApplication(sys.argv)
    
        window = Window()
        window.show()
    
        sys.exit(app.exec_())
    其他三种构造函数

    QDateTimeEdit 的功能作用之显示格式:

    这里要补充

    from PyQt5.Qt import * #刚开始学习可以这样一下导入
    import sys
    
    class Window(QWidget):
        def __init__(self):
            super().__init__()
            self.setWindowTitle("QDateTimeEdit 的学习")
            self.resize(400,400)
            self.set_ui()
    
    
        def set_ui(self):
            dateTimeEdit = QDateTimeEdit(QDateTime.currentDateTime(),self)
            # dateTimeEdit = QDateTimeEdit(QDate.currentDate(),self)
            # dateTimeEdit = QDateTimeEdit(QTime.currentTime(),self)
            dateTimeEdit.resize(150,30)
            dateTimeEdit.move(100,100)
    
            dateTimeEdit.setDisplayFormat("yy-MM-dd $ m:ss:zzz")
    
    
    if __name__ == '__main__':
        app =QApplication(sys.argv)
    
        window = Window()
        window.show()
    
        sys.exit(app.exec_())
    View Code

    QDateTimeEdit 的功能作用之section 控制:

    from PyQt5.Qt import * #刚开始学习可以这样一下导入
    import sys
    
    class Window(QWidget):
        def __init__(self):
            super().__init__()
            self.setWindowTitle("QDateTimeEdit 的学习")
            self.resize(400,400)
            self.set_ui()
            
    
            
            
    
        def set_ui(self):
            dateTimeEdit = QDateTimeEdit(QDateTime.currentDateTime(),self)
            dateTimeEdit.resize(150,30)
            dateTimeEdit.move(100,100)
    
            print(dateTimeEdit.sectionCount())
    
            btn = QPushButton(self)
            btn.setText("按钮")
            btn.move(0,300)
            # btn.clicked.connect(lambda :print(dateTimeEdit.currentSectionIndex()))
            # btn.clicked.connect(lambda :print(dateTimeEdit.setCurrentSectionIndex(3)))
            # btn.clicked.connect(lambda :print(dateTimeEdit.setCurrentSection(QDateTimeEdit.HourSection)))
    
    
            btn.clicked.connect(lambda :print(dateTimeEdit.sectionText(QDateTimeEdit.HourSection)))
    
    
    
    
    
    if __name__ == '__main__':
        app =QApplication(sys.argv)
    
        window = Window()
        window.show()
    
        sys.exit(app.exec_())
    View Code

    QDateTimeEdit 的功能作用之最大和最小日期时间:

    from PyQt5.Qt import * #刚开始学习可以这样一下导入
    import sys
    
    class Window(QWidget):
        def __init__(self):
            super().__init__()
            self.setWindowTitle("QDateTimeEdit 的学习")
            self.resize(400,400)
            self.set_ui()
            
    
            
            
    
        def set_ui(self):
            dateTimeEdit = QDateTimeEdit(QDateTime.currentDateTime(),self)
            dateTimeEdit.resize(150,30)
            dateTimeEdit.move(100,100)
    
            print(dateTimeEdit.sectionCount())
    
            btn = QPushButton(self)
            btn.setText("按钮")
            btn.move(0,300)
            def btn_clicked_slot():
                print("===")
                dateTimeEdit.setMaximumDateTime(QDateTime(2020,8,15,12,30))
                dateTimeEdit.setMinimumDateTime(QDateTime().currentDateTime())
    
    
            btn.clicked.connect(btn_clicked_slot)
    
    
    
    
    
    if __name__ == '__main__':
        app =QApplication(sys.argv)
    
        window = Window()
        window.show()
    
        sys.exit(app.exec_())
    View Code

    QDateTimeEdit 的功能作用之日历选择控件:

    from PyQt5.Qt import * #刚开始学习可以这样一下导入
    import sys
    
    class Window(QWidget):
        def __init__(self):
            super().__init__()
            self.setWindowTitle("QDateTimeEdit 的学习")
            self.resize(400,400)
            self.set_ui()
            
    
            
            
    
        def set_ui(self):
            dateTimeEdit = QDateTimeEdit(QDateTime.currentDateTime(),self)
            dateTimeEdit.resize(150,30)
            dateTimeEdit.move(100,100)
    
            print(dateTimeEdit.sectionCount())
    
            btn = QPushButton(self)
            btn.setText("按钮")
            btn.move(0,300)
            def btn_clicked_slot():
                dateTimeEdit.setCalendarPopup(True)  # 设置日历弹出,
                
                #如果觉得日历丑的话,可以如下定制
                # dateTimeEdit.calendarWidget()
    
    
            btn.clicked.connect(btn_clicked_slot)
    
    
    
    
    
    if __name__ == '__main__':
        app =QApplication(sys.argv)
    
        window = Window()
        window.show()
    
        sys.exit(app.exec_())
    View Code

    QDateTimeEdit 的功能作用之获取日期和时间:

    from PyQt5.Qt import * #刚开始学习可以这样一下导入
    import sys
    
    class Window(QWidget):
        def __init__(self):
            super().__init__()
            self.setWindowTitle("QDateTimeEdit 的学习")
            self.resize(400,400)
            self.set_ui()
            
    
            
            
    
        def set_ui(self):
            dateTimeEdit = QDateTimeEdit(QDateTime.currentDateTime(),self)
            dateTimeEdit.resize(150,30)
            dateTimeEdit.move(100,100)
    
            print(dateTimeEdit.sectionCount())
    
            btn = QPushButton(self)
            btn.setText("按钮")
            btn.move(0,300)
            def btn_clicked_slot():
                print(dateTimeEdit.dateTime())
                print(dateTimeEdit.date())
                print(dateTimeEdit.time())
    
    
            btn.clicked.connect(btn_clicked_slot)
    
    
    
    
    
    if __name__ == '__main__':
        app =QApplication(sys.argv)
    
        window = Window()
        window.show()
    
        sys.exit(app.exec_())
    View Code

    用section 也可以 ! 

    QDateTimeEdit 的信号:

    from PyQt5.Qt import * #刚开始学习可以这样一下导入
    import sys
    
    class Window(QWidget):
        def __init__(self):
            super().__init__()
            self.setWindowTitle("QDateTimeEdit 的学习")
            self.resize(400,400)
            self.set_ui()
            
    
            
            
    
        def set_ui(self):
            dateTimeEdit = QDateTimeEdit(QDateTime.currentDateTime(),self)
            dateTimeEdit.resize(150,30)
            dateTimeEdit.move(100,100)
    
            print(dateTimeEdit.sectionCount())
    
            btn = QPushButton(self)
            btn.setText("按钮")
            btn.move(0,300)
            def btn_clicked_slot():
                print(dateTimeEdit.dateTime())
                print(dateTimeEdit.date())
                print(dateTimeEdit.time())
    
    
            btn.clicked.connect(btn_clicked_slot)
    
            dateTimeEdit.dateTimeChanged.connect(lambda val:print(val))
            dateTimeEdit.dateChanged.connect(lambda val:print(val))
            dateTimeEdit.timeChanged.connect(lambda val:print(val))
    
    
    
    
    
    
    if __name__ == '__main__':
        app =QApplication(sys.argv)
    
        window = Window()
        window.show()
    
        sys.exit(app.exec_())
    View Code

    QDateTimeEdit 的相关子类:

    QDateEdit   :主要操作的是date

    QTimeEdit   :主要操作的是time :

    总结: 

    以上就是有关QDateTimeEdit 的内容:
    下面就进入输入控件中的第三种:组合框(下拉框输入)QComboBox:https://www.cnblogs.com/zach0812/p/11388413.html

  • 相关阅读:
    Codeforces Round #733
    [ZJOI2007] 时态同步(树形dp)
    最大子树和(树形dp)
    P2015 二叉苹果树
    没有上司的舞会(经典树形dp)
    P3884 [JLOI2009]二叉树问题(LCA)
    Bin Packing Problem(线段树 + multiset)
    P4281 [AHOI2008]紧急集合 / 聚会(最近公共祖先)
    P3128 [USACO15DEC]Max Flow P(LCA 树上差分)
    java中Set接口用法
  • 原文地址:https://www.cnblogs.com/zach0812/p/11387772.html
Copyright © 2020-2023  润新知