본문 바로가기

프로그래밍/PyQt5 GUI

32.QDateTimeEdit

QDateTimeEdit 위젯은 사용자에게 날짜와 시간을 선택, 편집하도록 할 때 사용합니다. (QDateTimeEdit 공식 문서) 참고

 

32-1 예제: ex31

import sys
from PyQt5.QtWidgets import (QApplication, QWidget, QDateTimeEdit, QLabel, QVBoxLayout)
from PyQt5.QtCore import QDateTime

class MyApp(QWidget):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        lbl = QLabel('QDateTimeEdit')
        datetimeEdit = QDateTimeEdit()
        datetimeEdit.setDateTime(QDateTime.currentDateTime())
        datetimeEdit.setDateTimeRange(QDateTime(1900, 1, 1, 00, 00, 00, 000), QDateTime(2300, 12, 31, 24, 00, 00, 000))
        datetimeEdit.setDisplayFormat('yyyy-MM-dd, hh:mm:ss')
        vbox = QVBoxLayout()
        vbox.addWidget(lbl)
        vbox.addWidget(datetimeEdit)
        vbox.addStretch()

        self.setLayout(vbox)

        self.setWindowTitle('QDateTimeEdit')
        self.setGeometry(300, 300, 300, 200)
        self.show()

if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = MyApp()
    sys.exit(app.exec_())

32-2 설명

datetimeEdit = QDateTimeEdit()
datetimeEdit.setDateTime(QDateTime.currentDateTime())
datetimeEdit.setDateTimeRange(QDateTime(1900, 1, 1, 00, 00, 00, 000), QDateTime(2300, 12, 31, 24, 00, 00, 000))
datetimeEdit.setDisplayFormat('yyyy-MM-dd, hh:mm:ss')
  • QDateTimeEdit 위젯을 이용하여 날짜와 시간을 편집할 수 있는 객체(datetimeedit)를 하나 만듭니다.
  • setDateTime 메서드에 QDateTime.currentDateTime()을 입력해서 현재 날짜와 시간으로 표시합니다.
  • setDateTimeRange를 이용하면 사용자가 선택할 수 있는 시간의 범위를 제한할 수 있습니다.
  • setDisplayFormat 메서드를 이용해서 날짜와 시간 형식을 설정합니다.
vbox = QVBoxLayout()
vbox.addWidget(lbl)
vbox.addWidget(datetimeEdit)
vbox.addStretch()

self.setLayout(vbox)

수직 박스 레이아웃을 이용해서 라벨과 날짜, 시간 편집 위젯을 수직으로 배치하고, 전체 위젯의 레이아웃으로 설정합니다.

32-3 결과

'프로그래밍 > PyQt5 GUI' 카테고리의 다른 글

34. QTextEdit  (0) 2021.07.27
33. QTextBrowser  (0) 2021.07.27
31. QTimeEdit  (0) 2021.07.27
30. QDateEdit  (0) 2021.07.27
29. QDoubleSpinBox  (0) 2021.07.27