QTimeEdit

QTimeEdit 위젯은 사용자에게 시간을 선택, 편집하도록 할 때 사용합니다.

예제에서 QTimeEdit 객체를 하나 만들고, 현재 시간으로 표시되도록 설정해보겠습니다.

QTimeEdit에 대한 자세한 내용은 QTimeEdit 공식 문서에서 확인할 수 있습니다.


예제

## Ex 5-17. QTimeEdit.

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QTimeEdit, QVBoxLayout
from PyQt5.QtCore import QTime


class MyApp(QWidget):

    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        lbl = QLabel('QTimeEdit')

        timeedit = QTimeEdit(self)
        timeedit.setTime(QTime.currentTime())
        timeedit.setTimeRange(QTime(3, 00, 00), QTime(23, 30, 00))
        timeedit.setDisplayFormat('hh:mm:ss')

        vbox = QVBoxLayout()
        vbox.addWidget(lbl)
        vbox.addWidget(timeedit)
        vbox.addStretch()

        self.setLayout(vbox)

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


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

시간 편집 위젯 (QTimeEdit)이 창에 나타납니다.



설명

timeedit = QTimeEdit(self)
timeedit.setTime(QTime.currentTime())
timeedit.setTimeRange(QTime(3, 00, 00), QTime(23, 30, 00))

QTimeEdit 클래스를 이용해서 시간 편집 위젯 (timeedit)을 하나 만들어줍니다.

setTime 메서드에 QTime.currentTime()를 입력해서 프로그램이 실행될 때 현재 시간으로 표시되도록 합니다.

setTimeRange 이용하면 사용자가 선택할 수 있는 시간의 범위를 제한할 수 있습니다.

최소 시간은 디폴트로 00시 00분 00초 000밀리초로 설정되어 있고, 최대 시간은 23시 59분 59초 999밀리초로 설정되어 있습니다.



timeedit.setDisplayFormat('hh:mm:ss')

setDisplayFormat 메서드를 이용해서 시간이 ‘hh:mm:ss’의 형식으로 표시되도록 설정했습니다.



vbox = QVBoxLayout()
vbox.addWidget(lbl)
vbox.addWidget(timeedit)
vbox.addStretch()

self.setLayout(vbox)

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



결과

../_images/4_17_qtimeedit.png ../_images/4_17_qtimeedit_mac.png

그림 5-17. QTimeEdit을 이용한 시간 편집 위젯 사용하기.


관련 페이지


이전글/다음글

이전글 :
다음글 :