from PyQt5.QtWidgets import QWidget, QApplication, QVBoxLayout, \\
QLabel, QPushButton, QInputDialog
from PyQt5.QtCore import Qt
import sys
class 입력다이얼로그(QWidget):
def __init__(self):
super().__init__()
self.day = ['월', '화', '수', '목', '금']
self.UI초기화()
def UI초기화(self):
self.btn1 = QPushButton('이름 입력', self)
self.btn1.move(30, 30)
self.btn1.clicked.connect(self.showDialog1)
self.btn2 = QPushButton('요일 선택', self)
self.btn2.move(30, 80)
self.btn2.clicked.connect(self.showDialog2)
self.btn3 = QPushButton('일자 선택', self)
self.btn3.move(30, 130)
self.btn3.clicked.connect(self.showDialog3)
self.label1 = QLabel('이곳에 이름이 표시됩니다.', self)
self.label1.move(130, 35)
self.label1.setFixedSize(150, 20)
self.label2 = QLabel('이곳에 요일이 표시됩니다.', self)
self.label2.move(130, 85)
self.label2.setFixedSize(150, 20)
self.label3 = QLabel('이곳에 날짜가 표시됩니다.', self)
self.label3.move(130, 135)
self.label3.setFixedSize(150, 20)
self.setWindowTitle('QInputDialog')
self.setGeometry(300, 300, 300, 200)
self.show()
def showDialog1(self):
text, flag = QInputDialog.getText(self, '입력창', '이름을 입력하세요.')
if flag:
self.label1.setText(str(text))
def showDialog2(self):
text, flag = QInputDialog.getItem(self, '리스트 호출 입력창',\\
'요일을 선택하세요', self.day)
if flag:
self.label2.setText(str(text))
def showDialog3(self):
number, flag = QInputDialog.getInt(self, "요일 선택 창",\\
"요일을 선택하세요", min=1, max=31)
if flag:
self.label3.setText(str(number)+"일")
프로그램무한반복 = QApplication(sys.argv)
실행인스턴스 = 입력다이얼로그()
프로그램무한반복.exec_()
다이얼 로그는 user와 프로그램 간에 의사소통을 하는 중요한 도구입니다. 간단한 입력부터 file까지 다양한 입력을 할 수 있도록 도와줍니다.
self.btn1 = QPushButton('이름 입력', self)
self.btn1.move(30, 30)
self.btn1.clicked.connect(self.showDialog)
self.btn2 = QPushButton('요일 선택', self)
self.btn2.move(30, 80)
self.btn2.clicked.connect(self.showDialog2)
self.btn3 = QPushButton('일자 선택', self)
self.btn3.move(30, 130)
self.btn3.clicked.connect(self.showDialog3)
테스트를 위한 여러 버튼을 만들고 시그널과 슬롯을 연결합니다.
def showDialog(self):
text, flag = QInputDialog.getText(
self, '입력 창', '이름을 입력하세요!')
if flag:
self.label1.setText(str(text))
self.day = ['월요일', '화요일', '수요일', '목요일', '금요일',
'토요일', '일요일']
def showDialog2(self):
text, flag = QInputDialog.getItem(
self, '리스트 호출 입력창', '요일을 선택하세요', self.day)
if flag:
self.label2.setText(str(text))