티스토리 뷰
2019/11/21 - [Python/PyQt5] - PyQt5: QLineEdit 사용하기 1
PyQt5: QLineEdit 사용하기 2
이번에는 setEchoMode()
메서드에 대해 알아보자. setEchoMode()
는 아래와 같이 4가지 모드를 설정할 수 있으며 각 모드에 따라 QLineEdit에 문자열을 입력할 때 보여지는 문자열의 모습이 달라진다.
상수 값 설명
QLineEdit.Normal |
0 |
입력된 문자를 표시합니다. (기본값) |
QLineEdit.NoEcho |
1 |
문자열을 표시하지 않습니다. 이 설정은 비밀번호의 글자수도 공개하지 않을 때 유용합니다. |
QLineEdit.Password |
2 |
입력된 문자 대신 비밀번호 가림용 문자를 표시합니다. |
QLineEdit.PasswordEchoOnEdit |
3 |
입력할 때만 문자를 표시하고, 수정 중에는 다른 문자를 표시합니다. |
각 모드를 적용한 코드는 아래와 같다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QLineEdit
class MyApp(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.lbl = QLabel(self)
self.lbl.move(60, 40)
# QLineEdit 인스턴스인 qle를 생성
qle1 = QLineEdit(self)
qle1.move(60, 100)
# 입력모드를 Normal로 설정: 입력된 문자를 표시합니다. (기본값)
qle1.setEchoMode(QLineEdit.Normal)
qle2 = QLineEdit(self)
qle2.move(60, 150)
# 입력모드를 NoEcho로 설정: 문자열을 표시하지 않습니다. 이 설정은 비밀번호의 글자수도 공개하지 않을 때 유용합니다.
qle2.setEchoMode(QLineEdit.NoEcho)
qle3 = QLineEdit(self)
qle3.move(60, 200)
# 입력모드를 Password로 설정: 입력된 문자 대신 비밀번호 가림용 문자를 표시합니다.
qle3.setEchoMode(QLineEdit.Password)
qle4 = QLineEdit(self)
qle4.move(60, 250)
# 입력모드를 PasswordEchoOnEdit로 설정: 입력할 때만 문자를 표시하고, 수정 중에는 다른 문자를 표시합니다.
qle4.setEchoMode(QLineEdit.PasswordEchoOnEdit)
# qle의 텍스트가 바뀌면, onChanged() 메서드를 호출하고 바뀐 문자열을 전달한다.
qle1.textChanged[str].connect(self.onChanged)
qle2.textChanged[str].connect(self.onChanged)
qle3.textChanged[str].connect(self.onChanged)
qle4.textChanged[str].connect(self.onChanged)
self.setWindowTitle('QLineEdit')
self.setGeometry(300, 300, 300, 400)
self.show()
def onChanged(self, text):
# lbl의 텍스트를 text의 문자열로 바꾸고
self.lbl.setText(text)
# 라벨의 크기를 조정
self.lbl.adjustSize()
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = MyApp()
sys.exit(app.exec_())
|
cs |
실행 화면
'Python > PyQt5' 카테고리의 다른 글
PyQt5: 여러 위젯 사용하기 2-1(윈도우 디자인 편) (0) | 2019.12.03 |
---|---|
PyQt5: 여러 위젯 사용하기 1 (0) | 2019.11.30 |
PyQt5: QLineEdit 사용하기 1 (0) | 2019.11.21 |
PyQt5: QComboBox 사용하기 (0) | 2019.11.20 |
PyQt5: QRadioButton 사용하기 (0) | 2019.11.18 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- Python
- PyQt5
- locallibrary
- 유래
- python3
- django
- C
- tips
- 북한말
- setText()
- Tistory
- judge
- QLabel
- QtDesigner
- 백준
- 리찬규
- QLineEdit
- 어원
- 리규찬
- BOJ
- words
- word
- QGridLayout
- books
- 소수
- MacOS
- QComboBox
- NK
- Mac
- baekjoon
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함
11-25 14:15