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_()

  • (•́ ✖ •̀)
    알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)