PyQt 버튼 클릭 이벤트 질문 있습니다
조회수 486회
안녕하세요 pyqt로 로그인 폼을 제작하고 있는데 selejson을 누르면 파일을 선택하는 창이 떠야 하는데 실행하자마자 버튼이 클릭되는지 바로 파일 선택 창이 뜹니다 계속 찾아 보았지만 저와 동일한 현상은 없는 것 같습니다.. 어느 부분이 잘못되었는지 지적 부탁드립니다 ! 감사합니다
import sys
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
from PyQt5 import QtCore, QtWidgets
from PyQt5.QtGui import QPalette, QColor, QPixmap
class MyWindow(QWidget):
def __init__(self):
super().__init__()
self.setWindowFlags(QtCore.Qt.FramelessWindowHint)
self.setWindowTitle("Login Info Preferences")
window = QPalette()
window.setColor(QPalette.Background, QColor(20, 20, 40))
self.setAutoFillBackground(True)
self.setPalette(window)
pixmap = QPixmap('vmware.ico').scaled(150, 150)
imglabel = QLabel()
imglabel.setPixmap(pixmap)
self.labelId = QLabel("ID : ")
self.labelPw = QLabel("PW : ")
self.lineEditId = QLineEdit()
self.lineEditPw = QLineEdit()
self.loginBtn = QPushButton("Save")
self.fileSelect = QPushButton("Select JSON")
self.lineEditPw.setEchoMode(QLineEdit.Password) # 비밀번호
self.labelId.setStyleSheet("Color : white") # 다크테마
self.labelPw.setStyleSheet("Color : white") # 다크테마
layout = QGridLayout()
self.setLayout(layout)
layout.addWidget(imglabel, 0, 1)
layout.addWidget(self.labelId, 1, 0)
layout.addWidget(self.lineEditId, 1, 1)
layout.addWidget(self.labelPw, 2, 0)
layout.addWidget(self.lineEditPw, 2, 1)
layout.addWidget(self.fileSelect, 3, 1)
layout.addWidget(self.loginBtn, 4, 1)
self.fileSelect.clicked.connect(self.selectJSONFile())
self.setGeometry(300, 300, 250, 300)
def selectJSONFile(self):
global jsonfile
jsonfile = QtWidgets.QFileDialog.getOpenFileName(self, 'open file')
print(jsonfile)
if __name__ == "__main__":
app = QApplication(sys.argv)
myWindow = MyWindow()
myWindow.show()
app.exec_()
-
(•́ ✖ •̀)
알 수 없는 사용자
댓글 입력