pyqt 로그인을 파이썬의 qstackedwidget 새 창에 어떻게 연결할 수 있습니까?

Danielb7

프로그램을 만들고 ive는 사용자를 메인 메뉴에 연결하는 로그인 시스템을 만들었습니다. 지금까지 ive는 작동했지만 내가 좋아하는 것은 아닙니다. 내 코드는 프로그램을 잘 시작하지만 if name == ' main ': 서브 루틴에 문제가 있습니다. 내 문제는 로그인 대화 상자 PyQt 와 매우 유사합니다.

로그인 발췌

class Ui_Login(QtGui.QDialog):
def __init__(self):
    QtGui.QDialog.__init__(self)
    self.dbu = db.DatabaseUtility('UsernamePassword_DB', 'masterTable')
    self.setupUi(self)
    self.confirm = None

Mainwidget exceprt

class MainWidget(QWidget):
def __init__(self, parent=None):
    super(MainWidget, self).__init__(parent)
    self.stack = QStackedWidget()
    layout = QVBoxLayout(self)
    layout.addWidget(self.stack)
    self.setGeometry(300, 300, 350, 250)    

이름 섹션에 도달하면 문제가 발생합니다. 만약 이름 == ' 주요 '

import sys
app = QtGui.QApplication(sys.argv)

if Ui_Login().exec_() == QtGui.QDialog.Accepted:
    sys.exit()
    w = MainWidget()
    w.show()
    sys.exit()

올바른 사용자 이름과 비밀번호를 입력하면 메인 창이 표시됩니다. 그러나 로그인 양식은 활성 상태로 유지되며 닫으면 기본 창도 닫힙니다. 나는 또한 다른 방법을 시도했다

if __name__ == '__main__':   
  app = QtGui.QApplication(sys.argv)
  ex = Ui_Login()
  ex.show()
  sys.exit(app.exec_())
  app = QApplication(sys.argv)
  w = MainWidget()
  w.show()
  app.exec_()
  sys.exit()

이것은 내가 정상적으로 로그인하고 메인 창이 나타날 것이지만 다른 폼에 연결되지 않았기 때문에 버튼이 작동하지 않음을 의미했습니다. 그래서 메인 위젯 클래스가 작동하지 않았습니다. 나는 다시 시도했다

if __name__ == '__main__':
    app = QtGui.QApplication(sys.argv)
    ex = Ui_Login()
    w = MainWidget()
    ex.show()
    w.show()
    sys.exit(app.exec_())
    sys.exit()
    app = QApplication(sys.argv)

따라서 이것은 로그인 대화 상자와 주 창 모두 동시에로드된다는 것을 의미합니다. 그러나 버튼은 메인 윈도우에서 작동합니다. 그러나 내 로그인 시스템에 연결되지 않았습니다.

그래서 로그인 시스템과 메인 윈도우를 함께 연결하는 방법에 대한 질문입니다. 이 질문이 길고 다루기 힘들지 않았기를 바랍니다.

Danielb7

내 코드를 살펴보면서 쇼 메뉴 신호를 잘못된 위치에 놓았습니다. 즉, 암호가 정확할 필요없이 주 메뉴 양식이로드된다는 것을 의미합니다. 나를 대신하여 테스트가 잘못되었습니다. 그러나 여전히 if name == ' main ': 서브 루틴 을 변경해야했습니다 . 다음과 같이 조정했습니다.

if __name__ == '__main__':    
  app=QtGui.QApplication(sys.argv)
  if Ui_Login().exec_()==QtGui.QDialog.Accepted:
  w = MainWidget()
  w.show()
  sys.exit()

이것은 내 문제를 해결하고 사용자 로그인이 메인 메뉴에 올바르게 연결되고 stackedwidget이 완벽하게 작동합니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

새 pyqt 창을 어떻게 초기화 할 수 있습니까?

분류에서Dev

RStudio에서 새 연결로 posgresql에 어떻게 연결할 수 있습니까?

분류에서Dev

PyQt5에서 두 개의 창을 어떻게 앞뒤로 이동할 수 있습니까?

분류에서Dev

어떻게 파일에 쓸 수 있지만 파이썬에 새 줄을 추가하는 대신 \ n 그대로 유지할 수 있습니까?

분류에서Dev

request.POST.get () 함수 내에서 연결을 어떻게 사용할 수 있습니까? (장고 / 파이썬)

분류에서Dev

새 창이로드 된 후 어떻게 실행할 수 있습니까?

분류에서Dev

파이썬에서 큰 로그 파일의 줄을 어떻게 추출 할 수 있습니까?

분류에서Dev

파이썬에서 mqtt 연결의 메시지 데이터를 어떻게 얻을 수 있습니까?

분류에서Dev

Chrome 메트로 모드에서 새 창을 어떻게 열 수 있습니까? 플러그인이 있습니까?

분류에서Dev

파이썬에서 1 차원 배열을 그리드로 어떻게 인쇄 할 수 있습니까?

분류에서Dev

파이썬의 목록 요소에서 수학 연산을 어떻게 할 수 있습니까?

분류에서Dev

R에서 SQLDF의 문자열을 어떻게 연결할 수 있습니까?

분류에서Dev

JQuery에서 속성 이름을 'this'와 어떻게 연결할 수 있습니까?

분류에서Dev

파일에 새 줄을 어떻게 추가 할 수 있습니까?

분류에서Dev

CPropertySheet에서 새 색상을 어떻게 정의 할 수 있습니까?

분류에서Dev

junit에서 새 통화 생성을 어떻게 모의 할 수 있습니까?

분류에서Dev

새 응용 프로그램 창이 열리는 위치를 어떻게 선택할 수 있습니까?

분류에서Dev

sequelize에서 열을 어떻게 연결할 수 있습니까?

분류에서Dev

파이썬에서 함수의 값을 어떻게 인쇄하고 반환 할 수 있습니까?

분류에서Dev

어떻게 파이썬 dataframe에서 색인을 결합 할 수 있습니다?

분류에서Dev

파이썬에서 쌍으로 목록 쌍의 값을 어떻게 수정할 수 있습니까?

분류에서Dev

파이썬의 클래스 데코레이터에서 인수를 어떻게 전달할 수 있습니까?

분류에서Dev

새 버전의 fabricJS에서 getActiveObject () 및 getActiveGroup ()을 어떻게 해결할 수 있습니까?

분류에서Dev

파이썬의 재귀 함수에서 공유 목록을 어떻게 정의 할 수 있습니까?

분류에서Dev

명령 줄에서이 새로운 오류를 어떻게 해결할 수 있습니까?

분류에서Dev

어떻게 든 파이썬의 전역 수준에서 로컬 함수를 사용할 수 있습니까?

분류에서Dev

파이썬에서 참조로 함수의 "숫자 변수"를 어떻게 전달할 수 있습니까?

분류에서Dev

새로 열린 팝업 창이 자동으로 닫힙니다. 어떻게 중지 할 수 있습니까?

분류에서Dev

파이썬에서 알 수없는 수의 버킷을 어떻게 반복 할 수 있습니까?

Related 관련 기사

  1. 1

    새 pyqt 창을 어떻게 초기화 할 수 있습니까?

  2. 2

    RStudio에서 새 연결로 posgresql에 어떻게 연결할 수 있습니까?

  3. 3

    PyQt5에서 두 개의 창을 어떻게 앞뒤로 이동할 수 있습니까?

  4. 4

    어떻게 파일에 쓸 수 있지만 파이썬에 새 줄을 추가하는 대신 \ n 그대로 유지할 수 있습니까?

  5. 5

    request.POST.get () 함수 내에서 연결을 어떻게 사용할 수 있습니까? (장고 / 파이썬)

  6. 6

    새 창이로드 된 후 어떻게 실행할 수 있습니까?

  7. 7

    파이썬에서 큰 로그 파일의 줄을 어떻게 추출 할 수 있습니까?

  8. 8

    파이썬에서 mqtt 연결의 메시지 데이터를 어떻게 얻을 수 있습니까?

  9. 9

    Chrome 메트로 모드에서 새 창을 어떻게 열 수 있습니까? 플러그인이 있습니까?

  10. 10

    파이썬에서 1 차원 배열을 그리드로 어떻게 인쇄 할 수 있습니까?

  11. 11

    파이썬의 목록 요소에서 수학 연산을 어떻게 할 수 있습니까?

  12. 12

    R에서 SQLDF의 문자열을 어떻게 연결할 수 있습니까?

  13. 13

    JQuery에서 속성 이름을 'this'와 어떻게 연결할 수 있습니까?

  14. 14

    파일에 새 줄을 어떻게 추가 할 수 있습니까?

  15. 15

    CPropertySheet에서 새 색상을 어떻게 정의 할 수 있습니까?

  16. 16

    junit에서 새 통화 생성을 어떻게 모의 할 수 있습니까?

  17. 17

    새 응용 프로그램 창이 열리는 위치를 어떻게 선택할 수 있습니까?

  18. 18

    sequelize에서 열을 어떻게 연결할 수 있습니까?

  19. 19

    파이썬에서 함수의 값을 어떻게 인쇄하고 반환 할 수 있습니까?

  20. 20

    어떻게 파이썬 dataframe에서 색인을 결합 할 수 있습니다?

  21. 21

    파이썬에서 쌍으로 목록 쌍의 값을 어떻게 수정할 수 있습니까?

  22. 22

    파이썬의 클래스 데코레이터에서 인수를 어떻게 전달할 수 있습니까?

  23. 23

    새 버전의 fabricJS에서 getActiveObject () 및 getActiveGroup ()을 어떻게 해결할 수 있습니까?

  24. 24

    파이썬의 재귀 함수에서 공유 목록을 어떻게 정의 할 수 있습니까?

  25. 25

    명령 줄에서이 새로운 오류를 어떻게 해결할 수 있습니까?

  26. 26

    어떻게 든 파이썬의 전역 수준에서 로컬 함수를 사용할 수 있습니까?

  27. 27

    파이썬에서 참조로 함수의 "숫자 변수"를 어떻게 전달할 수 있습니까?

  28. 28

    새로 열린 팝업 창이 자동으로 닫힙니다. 어떻게 중지 할 수 있습니까?

  29. 29

    파이썬에서 알 수없는 수의 버킷을 어떻게 반복 할 수 있습니까?

뜨겁다태그

보관