본문 바로가기
ETC/Python

PyQt 비밀번호 입력창(별표 표시) 만들기

by Guardy 2020. 8. 15.
728x90

이번 글에서는 QtextEdit 비밀번호 입력창 만들기를 해보도록 하겠다.

프로그램 로그인창에서 비밀번호를 그대로 보여주는 형태로 만들면, 유저입장에서 뭔가 찝찝한 기분이 들 수 있다.

따라서 비밀번호 Object에 값을 입력 시, 자동으로 * 표시와 같이 안보이는 형태로 바꿔주면 좋을 것이다.

 

우리는 코드를 통해 이 문제를 해결해야 한다.

QtDesigner로 만들어 놓은 UI 틀은 다음과 같다. 

아쉽게도 QTextEdit은 password모드를 제공하지 않는다.

현재는 값을 입력하면 다음과 같이 나온다.

비밀번호가 그대로 노출이 된다.

우리는 이 비밀번호를 *표시로 바꿔주어야 한다. 우선 비밀번호 QTextEdit을 지우고 QLineEdit으로 바꿔준다.

그다음 echoMode를 Password로 바꿔준다.

QtDesigner로 작업했으니 UI 파일로 저장 후 py 코드로 바꿔준다.

실행시키면 다음과 같이 나온다.

비밀번호를 입력했더니 검은색 동그라미로 나온다.

 

만약 QtDesigner를 사용하지 않는 프로그래머라면 다음 코드를 작성하면 된다.

self.lineEdit = QtWidgets.QLineEdit(self.centralwidget)
self.lineEdit.setGeometry(QtCore.QRect(30, 70, 201, 31))
self.lineEdit.setEchoMode(QtWidgets.QLineEdit.Password)
self.lineEdit.setPlaceholderText("비밀번호")
self.lineEdit.setObjectName("lineEdit")
MainWindow.setCentralWidget(self.centralwidget)

 

728x90