- PyQt5 Tutorial - 파이썬으로 만드는 나만의 GUI 프로그램
- 1. PyQt5 소개 (Introduction)
- 2. PyQt5 설치 (Installation)
- 3. PyQt5 기초 (Basics)
- 4. PyQt5 레이아웃 (Layout)
- 5. PyQt5 위젯 (Widget)
- 6. PyQt5 다이얼로그 (Dialog)
- 7. PyQt5 시그널과 슬롯 (Signal&Slot)
- 8. PyQt5 그림 그리기 (Updated)
- 9. PyQt5 실행파일 만들기 (PyInstaller)
- 10. PyQt5 프로그램 예제 (Updated)
- ▷ PDF & 예제 파일
- Python Tutorial
- NumPy Tutorial
- Matplotlib Tutorial
- PyQt5 Tutorial
- BeautifulSoup Tutorial
- xlrd/xlwt Tutorial
- Pillow Tutorial
- Googletrans Tutorial
- PyWin32 Tutorial
- PyAutoGUI Tutorial
- Pyperclip Tutorial
- TensorFlow Tutorial
- Tips and Examples
QInputDialog¶
입력 다이얼로그 (QInputDialog)는 사용자가 간단한 값을 입력할 때 사용하는 다이얼로그입니다.
입력값은 숫자, 문자열, 리스트에서 선택한 항목 등이 될 수 있습니다. (QInputDialog 공식 문서 참고)
입력값의 형태에 따라 아래와 같이 다섯 개의 유용한 함수가 제공됩니다.
getText()
getMultiLineText()
getInt()
getDouble()
getItem()
예제에서는 getText() 메서드를 사용합니다.
예제¶
## Ex 6-1. QInputDialog.
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QLineEdit, QInputDialog
class MyApp(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.btn = QPushButton('Dialog', self)
self.btn.move(30, 30)
self.btn.clicked.connect(self.showDialog)
self.le = QLineEdit(self)
self.le.move(120, 35)
self.setWindowTitle('Input dialog')
self.setGeometry(300, 300, 300, 200)
self.show()
def showDialog(self):
text, ok = QInputDialog.getText(self, 'Input Dialog', 'Enter your name:')
if ok:
self.le.setText(str(text))
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = MyApp()
sys.exit(app.exec_())
푸시 버튼 (QPushButton)과 줄 편집기 (QLineEdit) 위젯을 하나씩 만들었습니다.
버튼을 누르면 입력 다이얼로그 (input dialog)가 나타나고, 텍스트를 입력받아서 줄 편집 위젯에 표시합니다.
설명¶
text, ok = QInputDialog.getText(self, 'Input Dialog', 'Enter your name:')
이 코드를 통해 입력 대화창이 나타납니다.
두번째 매개변수는 대화창의 타이틀, 세번째 매개변수는 대화창 안에 보여질 메세지를 의미합니다. 입력 다이얼로그는 입력한 텍스트와 불(Boolean) 값을 반환합니다.
텍스트를 입력한 후 ‘OK’ 버튼을 누르면 불 값은 True, ‘Cancel’ 버튼을 누르면 불 값은 False가 됩니다.
if ok:
self.le.setText(str(text))
입력한 값을 setText() 메서드를 통해 줄 편집 위젯에 표시되도록 합니다.
이전글/다음글
이전글 : 6. PyQt5 다이얼로그 (Dialog)
다음글 : QColorDialog
Show/Post Comments >