Cześć,
robię prosty projekt, estetyczny ekran logowania się w QtDesignerze. Pierwszy ekran włącza się normalnie, jednak po kliknięciu przycisku do logowania się, aplikacja się wyłącza. Oto błąd:
Traceback (most recent call last):
File "C:\Users\swron\PycharmProjects\pythonQt5\venv\main.py", line 25, in gotologin
login = LoginScreen()
^^^^^^^^^^^^^
File "C:\Users\swron\PycharmProjects\pythonQt5\venv\main.py", line 42, in __init__
self.login.clicked.connect(self.login_function)
^^^^^^^^^^
AttributeError: 'LoginScreen' object has no attribute 'login'
A oto mój kod:
import sys
import os
from PyQt5.uic import loadUi
from PyQt5 import QtWidgets
from PyQt5.QtWidgets import *
class WelcomeScreen(QDialog):
def __init__(self):
super(WelcomeScreen, self).__init__()
logMenuPath = os.path.dirname(os.path.abspath(__file__))
logMenu_ui_file = os.path.join(logMenuPath, 'loginMenu.ui')
if not os.path.exists(logMenu_ui_file):
print("Plik nie istnieje lub ścieżka jest niepoprawna: {}".format(logMenu_ui_file))
else:
loadUi(logMenu_ui_file, self)
self.login.clicked.connect(self.gotologin)
def gotologin(self):
login = LoginScreen()
widget.addWidget(login)
widget.setCurrentIndex(widget.currentIndex() + 1)
class LoginScreen(QDialog):
def __init__(self):
super(LoginScreen, self).__init__()
logScreenPath = os.path.dirname(os.path.abspath(__file__))
log_ui_file = os.path.join(logScreenPath, 'loginGraphics.ui')
loadUi(log_ui_file, self)
self.LEPasswordInput.setEchoMode(QtWidgets.QLineEdit.Password)
self.login.clicked.connect(self.login_function)
def login_function(self):
username = self.LELoginInput.text()
password = self.LEPasswordInput.text()
if len(username) == 0 or len(password) == 0:
self.error.setText('error')
if __name__ == '__main__':
app = QApplication(sys.argv)
welcome = WelcomeScreen()
widget = QStackedWidget()
widget.addWidget(welcome)
widget.setFixedHeight(800)
widget.setFixedWidth(1200)
widget.show()
try:
sys.exit(app.exec_())
except:
print('Exiting...')
Moje pliki w QtDesignerze:
https://www.dropbox.com/sh/ny70rdcy5c1cf7l/AABPUEQ8nK_hGd7mJZFQRtHIa?dl=0