Python Forum

Full Version: [Solved]Help Getting Started on Scene Swapping
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
Hello,

I have yet another question, but this one entails replacing the current screen/window with a new one when it is called.

I'm trying to have my AdminMenu.py(A PyQT GUI) open on the same windows after the user has logged in on the LoginScreen.py(A PyQT GUI).

How can I achieve this?
Do I just call the class Ui_MainDisplay(object):?

I looked online but I can't find many tutorials on this, so any help is greatly appreciated.

Thanks in advance.


The validate chunk of my Login Screen Code which will take the user to the appropriate menu (I'm only focusing on adminMenu for now):
#---------------------------------------------------------------
#                Validate Function -> Validates user 
#---------------------------------------------------------------
#Pass in user and password variables from login function
#Check if the user is valid (registered in database) -> Give access to inventory program 
#If user is not valid -> return to login
#-->TODO: Write the user and current date to a file to keep track of logins
def validate(userInputName, userInputPassword):
    if StandardUsers().get(userInputName) == userInputPassword:
        print('Success! You are now logged in as: ' + userInputName)
        #Switch from this screen to the MainMenu Screen
        #mainMenu()

    if SuperUsers().get(userInputName) == userInputPassword:
        print('Success! You are now logged in as: ' + userInputName)
        #Switch from this csreen to the AdminMenu Screen
        #adminMenu()
        
    else:
        print('You are not registered to use this program')
#---------------------------------------------------------------



My AdminMenu screen code (Right now):
from PyQt5 import QtCore, QtGui, QtWidgets


class Ui_MainDisplay(object):
    def setupUi(self, MainDisplay):
        MainDisplay.setObjectName("MainDisplay")
        MainDisplay.resize(1123, 903)
        MainDisplay.setStyleSheet("background-color: rgb(0, 170, 255);")
        self.centralwidget = QtWidgets.QWidget(MainDisplay)
        self.centralwidget.setObjectName("centralwidget")
        self.gridLayout = QtWidgets.QGridLayout(self.centralwidget)
        self.gridLayout.setObjectName("gridLayout")
        self.verticalLayout = QtWidgets.QVBoxLayout()
        self.verticalLayout.setContentsMargins(-1, 0, -1, 0)
        self.verticalLayout.setSpacing(6)
        self.verticalLayout.setObjectName("verticalLayout")
        self.AddItemButton = QtWidgets.QPushButton(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.AddItemButton.setFont(font)
        self.AddItemButton.setStyleSheet("background-color: rgb(85, 255, 0);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"\n"
"")
        self.AddItemButton.setObjectName("AddItemButton")
        self.verticalLayout.addWidget(self.AddItemButton)
        self.DeleteItemButton = QtWidgets.QPushButton(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.DeleteItemButton.setFont(font)
        self.DeleteItemButton.setStyleSheet("background-color: rgb(255, 65, 68);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.DeleteItemButton.setObjectName("DeleteItemButton")
        self.verticalLayout.addWidget(self.DeleteItemButton)
        self.CheckoutButton = QtWidgets.QPushButton(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.CheckoutButton.setFont(font)
        self.CheckoutButton.setStyleSheet("background-color: rgb(255, 255, 0);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.CheckoutButton.setObjectName("CheckoutButton")
        self.verticalLayout.addWidget(self.CheckoutButton)
        self.ReturnButton = QtWidgets.QPushButton(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.ReturnButton.setFont(font)
        self.ReturnButton.setStyleSheet("background-color: rgb(255, 170, 32);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.ReturnButton.setObjectName("ReturnButton")
        self.verticalLayout.addWidget(self.ReturnButton)
        self.ScanBarcodeButton = QtWidgets.QPushButton(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.ScanBarcodeButton.setFont(font)
        self.ScanBarcodeButton.setStyleSheet("background-color: rgb(211, 211, 211);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.ScanBarcodeButton.setObjectName("ScanBarcodeButton")
        self.verticalLayout.addWidget(self.ScanBarcodeButton)
        self.MoreInfoButton = QtWidgets.QPushButton(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.MoreInfoButton.setFont(font)
        self.MoreInfoButton.setStyleSheet("background-color: rgb(196, 17, 255);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;")
        self.MoreInfoButton.setObjectName("MoreInfoButton")
        self.verticalLayout.addWidget(self.MoreInfoButton)
        self.RefreshButton = QtWidgets.QPushButton(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.RefreshButton.setFont(font)
        self.RefreshButton.setStyleSheet("background-color: rgb(0, 255, 255);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"\n"
"")
        self.RefreshButton.setObjectName("RefreshButton")
        self.verticalLayout.addWidget(self.RefreshButton)
        spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.verticalLayout.addItem(spacerItem)
        self.LogoutButton = QtWidgets.QPushButton(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.LogoutButton.setFont(font)
        self.LogoutButton.setStyleSheet("background-color: rgb(255, 255, 255);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.LogoutButton.setObjectName("LogoutButton")
        self.verticalLayout.addWidget(self.LogoutButton)
        self.gridLayout.addLayout(self.verticalLayout, 4, 3, 1, 1)
        self.Header = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(15)
        font.setBold(True)
        font.setWeight(75)
        self.Header.setFont(font)
        self.Header.setStyleSheet("background-color: rgb(0, 0, 0);\n"
"color: rgb(255, 255, 255);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;")
        self.Header.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
        self.Header.setObjectName("Header")
        self.gridLayout.addWidget(self.Header, 0, 1, 1, 3)
        self.SearchButton = QtWidgets.QPushButton(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.SearchButton.setFont(font)
        self.SearchButton.setStyleSheet("background-color: rgb(211, 211, 211);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.SearchButton.setObjectName("SearchButton")
        self.gridLayout.addWidget(self.SearchButton, 2, 1, 1, 1)
        self.SearchBar = QtWidgets.QLineEdit(self.centralwidget)
        self.SearchBar.setStyleSheet("background-color: rgb(255, 255, 255);")
        self.SearchBar.setObjectName("SearchBar")
        self.gridLayout.addWidget(self.SearchBar, 2, 2, 1, 1)
        self.InventoryDisplay = QtWidgets.QTableWidget(self.centralwidget)
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.InventoryDisplay.setFont(font)
        self.InventoryDisplay.setStyleSheet("background-color: rgb(255, 255, 255);\n"
"")
        self.InventoryDisplay.setObjectName("InventoryDisplay")
        self.InventoryDisplay.setColumnCount(11)
        self.InventoryDisplay.setRowCount(0)
        item = QtWidgets.QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(0, item)
        item = QtWidgets.QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(1, item)
        item = QtWidgets.QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(2, item)
        item = QtWidgets.QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(3, item)
        item = QtWidgets.QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(4, item)
        item = QtWidgets.QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(5, item)
        item = QtWidgets.QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(6, item)
        item = QtWidgets.QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(7, item)
        item = QtWidgets.QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(8, item)
        item = QtWidgets.QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(9, item)
        item = QtWidgets.QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(10, item)
        self.gridLayout.addWidget(self.InventoryDisplay, 4, 1, 1, 2)
        MainDisplay.setCentralWidget(self.centralwidget)
        self.statusbar = QtWidgets.QStatusBar(MainDisplay)
        self.statusbar.setObjectName("statusbar")
        MainDisplay.setStatusBar(self.statusbar)

        self.retranslateUi(MainDisplay)
        QtCore.QMetaObject.connectSlotsByName(MainDisplay)

    def retranslateUi(self, MainDisplay):
        _translate = QtCore.QCoreApplication.translate
        MainDisplay.setWindowTitle(_translate("MainDisplay", "MainWindow"))
        self.AddItemButton.setText(_translate("MainDisplay", "Add Item"))
        self.DeleteItemButton.setText(_translate("MainDisplay", "Delete Item"))
        self.CheckoutButton.setText(_translate("MainDisplay", "Check Out"))
        self.ReturnButton.setText(_translate("MainDisplay", "Return"))
        self.ScanBarcodeButton.setText(_translate("MainDisplay", "Scan Barcode"))
        self.MoreInfoButton.setText(_translate("MainDisplay", "More Info"))
        self.RefreshButton.setText(_translate("MainDisplay", "Refresh"))
        self.LogoutButton.setText(_translate("MainDisplay", "Log Out"))
        self.Header.setText(_translate("MainDisplay", "Admin Menu"))
        self.SearchButton.setText(_translate("MainDisplay", "Search"))
        item = self.InventoryDisplay.horizontalHeaderItem(0)
        item.setText(_translate("MainDisplay", "ID"))
        item = self.InventoryDisplay.horizontalHeaderItem(1)
        item.setText(_translate("MainDisplay", "Name"))
        item = self.InventoryDisplay.horizontalHeaderItem(2)
        item.setText(_translate("MainDisplay", "Quantity"))
        item = self.InventoryDisplay.horizontalHeaderItem(3)
        item.setText(_translate("MainDisplay", "Price ($)"))
        item = self.InventoryDisplay.horizontalHeaderItem(4)
        item.setText(_translate("MainDisplay", "Sell Price ($)"))
        item = self.InventoryDisplay.horizontalHeaderItem(5)
        item.setText(_translate("MainDisplay", "Description"))
        item = self.InventoryDisplay.horizontalHeaderItem(6)
        item.setText(_translate("MainDisplay", "Category"))
        item = self.InventoryDisplay.horizontalHeaderItem(7)
        item.setText(_translate("MainDisplay", "Location"))
        item = self.InventoryDisplay.horizontalHeaderItem(8)
        item.setText(_translate("MainDisplay", "Length (Ft)"))
        item = self.InventoryDisplay.horizontalHeaderItem(9)
        item.setText(_translate("MainDisplay", "Barcode #"))
        item = self.InventoryDisplay.horizontalHeaderItem(10)
        item.setText(_translate("MainDisplay", "Date Updated"))


if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    MainDisplay = QtWidgets.QMainWindow()
    ui = Ui_MainDisplay()
    ui.setupUi(MainDisplay)
    MainDisplay.show()
    sys.exit(app.exec())
Updated: 05/14/22 to show the right code. I accidently posted the AdminMenu code twice
The full Login Screen Code:
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWidgets import QMessageBox

from DataBases.UserDatabase import StandardUsers, SuperUsers

from AdminMenu import Ui_MainDisplay

class Ui_Loginscreen(object):
    def setupUi(self, Loginscreen):
        Loginscreen.setObjectName("Loginscreen")
        Loginscreen.resize(1108, 895)
        Loginscreen.setStyleSheet("background-color: rgb(0, 170, 255);")
        self.centralwidget = QtWidgets.QWidget(Loginscreen)
        self.centralwidget.setObjectName("centralwidget")
        self.gridLayout = QtWidgets.QGridLayout(self.centralwidget)
        self.gridLayout.setObjectName("gridLayout")
        self.Header = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(20)
        font.setBold(True)
        font.setWeight(75)
        self.Header.setFont(font)
        self.Header.setAlignment(QtCore.Qt.AlignCenter)
        self.Header.setObjectName("Header")
        self.gridLayout.addWidget(self.Header, 0, 0, 1, 1)
        self.formLayout_2 = QtWidgets.QFormLayout()
        self.formLayout_2.setObjectName("formLayout_2")
        self.NameLabel = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.NameLabel.setFont(font)
        self.NameLabel.setObjectName("NameLabel")
        self.formLayout_2.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.NameLabel)
        self.NameInput = QtWidgets.QLineEdit(self.centralwidget)
        self.NameInput.setStyleSheet("background-color: rgb(255, 255, 255);")
        self.NameInput.setText("")
        self.NameInput.setObjectName("NameInput")
        self.formLayout_2.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.NameInput)
        self.PasswordLabel = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.PasswordLabel.setFont(font)
        self.PasswordLabel.setObjectName("PasswordLabel")
        self.formLayout_2.setWidget(1, QtWidgets.QFormLayout.LabelRole, self.PasswordLabel)
        self.PasswordInput = QtWidgets.QLineEdit(self.centralwidget)
        font = QtGui.QFont()
        font.setFamily("Wingdings")
        self.PasswordInput.setFont(font)
        self.PasswordInput.setStyleSheet("background-color: rgb(255, 255, 255);")
        self.PasswordInput.setText("")
        self.PasswordInput.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter)
        self.PasswordInput.setObjectName("PasswordInput")
        self.formLayout_2.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.PasswordInput)
        self.label = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(8)
        font.setItalic(True)
        self.label.setFont(font)
        self.label.setAlignment(QtCore.Qt.AlignCenter)
        self.label.setObjectName("label")
        self.formLayout_2.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.label)
        spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
        self.formLayout_2.setItem(3, QtWidgets.QFormLayout.FieldRole, spacerItem)
        self.LoginButton = QtWidgets.QPushButton(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.LoginButton.setFont(font)
        self.LoginButton.setStyleSheet("background-color: rgb(211, 211, 211);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.LoginButton.setObjectName("LoginButton")
        self.formLayout_2.setWidget(4, QtWidgets.QFormLayout.FieldRole, self.LoginButton)
        self.gridLayout.addLayout(self.formLayout_2, 1, 0, 1, 1)
        Loginscreen.setCentralWidget(self.centralwidget)
        self.statusbar = QtWidgets.QStatusBar(Loginscreen)
        self.statusbar.setObjectName("statusbar")
        Loginscreen.setStatusBar(self.statusbar)

        self.retranslateUi(Loginscreen)
        QtCore.QMetaObject.connectSlotsByName(Loginscreen)

    def retranslateUi(self, Loginscreen):
        _translate = QtCore.QCoreApplication.translate
        Loginscreen.setWindowTitle(_translate("Loginscreen", "E.I.S"))
        self.Header.setText(_translate("Loginscreen", "Electronic Inventory System (E.I.S)"))
        self.NameLabel.setText(_translate("Loginscreen", "Name"))
        self.PasswordLabel.setText(_translate("Loginscreen", "Password"))
        self.label.setText(_translate("Loginscreen", "\n"
"\n"
"\n"
"\n"
"Electronic Inventory System (E.I.S)\n"
"Version: 2.6\n"
"Last Updated: 05/11/2022\n"
"\n"
"\n"
""))
        self.LoginButton.setText(_translate("Loginscreen", "Log In"))

        #------------------------------------------
                        #Actions
        #------------------------------------------
        #When the Login button is clicked -> LoginClicked Function
        LoginButton = self.LoginButton
        LoginButton.clicked.connect(self.LoginClicked)
        #------------------------------------------
#----------------------------------
    #Store Name and Password
    def LoginClicked(self):
        userInputName = self.NameInput.text()
        userInputPassword = self.PasswordInput.text()
        #Print in terminal for testing:
        print("The Login Button was clicked")
        print("Name: " + userInputName)
        print("Password: " + userInputPassword)

        #Validate Login Info
        if StandardUsers().get(userInputName) == userInputPassword:
            print('Success! You are now logged in as: ' + userInputName)
            #Switch from this screen to the MainMenu Screen
            #mainMenu()

        if SuperUsers().get(userInputName) == userInputPassword:
            print('Success! You are now logged in as: ' + userInputName)
            #Switch from this screen to the AdminMenu Screen
            #adminMenu()
            self.win = Ui_MainDisplay()
            self.win.show()
            self.close()

        else:
            #Call Invalid Credentials Popup
            self.invalidCredentials()
            print('You are not registered to use this program')
#----------------------------------
#-----------------------------------------------------------------
    #Invalid Credentails Popup:
    def invalidCredentials(self):
        msgBox = QMessageBox()
        msgBox.setIcon(QMessageBox.Critical)
        msgBox.setText("You are not registered to use this program")
        msgBox.setWindowTitle("Invalid Credentials")
        msgBox.setStandardButtons(QMessageBox.Ok)
        msgBox.buttonClicked.connect(msgButtonClick)

        returnValue = msgBox.exec()
        if returnValue == QMessageBox.Ok:
            print('OK was clicked')
        
def msgButtonClick(i):
    print("Button clicked is:",i.text())
#-----------------------------------------------------------------


if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    Loginscreen = QtWidgets.QMainWindow()
    ui = Ui_Loginscreen()
    ui.setupUi(Loginscreen)
    Loginscreen.show()
    sys.exit(app.exec_())
Why the same window? Most applications that have a login use a dialog. If you really want the login to be a different "view" in the main window I suggest using a QStackedWidget. This is like a tabbed widget, but without the tabs. Your program can decide which view in the "stack" is currently on top.

https://www.tutorialspoint.com/pyqt/pyqt...widget.htm
But how do I take my whole AdminMenu.py code and stack it in front of the Loginscreen.py? I have them in two different python scripts (LoginScreen.py & AdminMenu.py) so how would I call the AdminMenu.show and stack it?


I was trying things and put the main in my AdminMenu in a function (AdminMenu()) so It can be called from the LoginMenu

AdminMenu.py
def AdminMenu():
        import sys
        app = QtWidgets.QApplication(sys.argv)
        MainDisplay = QtWidgets.QMainWindow()
        ui = Ui_MainDisplay()
        ui.setupUi(MainDisplay)
        MainDisplay.show()
        sys.exit(app.exec())

if __name__ == "__main__":
        AdminMenu()
In my LoginScreen.py under my validate function:
 if SuperUsers().get(userInputName) == userInputPassword:
            print('Success! You are now logged in as: ' + userInputName)
            #Switch from this screen to the AdminMenu Screen
            AdminMenu() #Open Admin Menu Screen
But if I run it and log in as an Admin I get:
Error:
QCoreApplication::exec: The event loop is already running
Am I close? I would probably have to exit the LoginScreen and quickly open the AdminMenu or something?
Login screen code and admin menu code are the same?
That's how you posted it.
This is an example to open mainWin on success

import sys
from PyQt5.QtWidgets import (QApplication, QWidget, QPushButton, QMainWindow, 
                                QLabel, QLineEdit, QGridLayout, QMessageBox)
from PyQt5.QtCore import Qt

class mainWin(QMainWindow):
    def __init__(self, parent = None):
        super(mainWin, self).__init__(parent)
        self.setGeometry(0, 0, 800, 600)
        self.lbl = QLabel(text = "Main Window", alignment = Qt.AlignCenter)
        self.setCentralWidget(self.lbl)
        self.setWindowTitle("Main Window")

class LoginForm(QWidget):
    def __init__(self):
        super().__init__()
        self.setWindowTitle('Login')
        self.setGeometry(0, 0, 800, 600)

        layout = QGridLayout()

        label_name = QLabel('Username:')
        self.lineEdit_username = QLineEdit("user")
        self.lineEdit_username.setPlaceholderText('Please enter your username')
        layout.addWidget(label_name, 0, 0)
        layout.addWidget(self.lineEdit_username, 0, 1)

        label_password = QLabel('Password:')
        self.lineEdit_password = QLineEdit("000")
        self.lineEdit_password.setPlaceholderText('Please enter your password')
        layout.addWidget(label_password, 1, 0)
        layout.addWidget(self.lineEdit_password, 1, 1)

        button_login = QPushButton('Login')
        button_login.clicked.connect(self.check_password)
        layout.addWidget(button_login, 2, 1, 1, 1)
        
        empty = QWidget()
        layout.addWidget(empty, 3, 1, 1, 1)

        self.setLayout(layout)

    def check_password(self):
        msg = QMessageBox()

        if self.lineEdit_username.text() == 'user' and self.lineEdit_password.text() == '000':
            self.win = mainWin()
            self.win.show()
            self.close()
        else:
            msg.setText('Incorrect Username or Password\ntry again')
            msg.exec_()
            return


if __name__ == '__main__':
    app = QApplication(sys.argv)

    form = LoginForm()
    form.show()

    sys.exit(app.exec_())
Sorry, I'm still having a bit of troubles.

I did self.win which calls my MainDisplay from my AdminMenu.py:
        if SuperUsers().get(userInputName) == userInputPassword:
            print('Success! You are now logged in as: ' + userInputName)
            #Switch from this screen to the AdminMenu Screen
            self.win = Ui_MainDisplay()
            self.win.show()
            self.close()
But when I try to login in as the admin I get this error:
Error:
in LoginClicked self.win.show() AttributeError: 'Ui_MainDisplay' object has no attribute 'show'
What am I missing/doing wrong?

And this is my AdminMenu.py and I updated the previous post to show the correct LoginMenu code:
from PyQt5 import QtCore, QtGui, QtWidgets


class Ui_MainDisplay(object):
    def setupUi(self, MainDisplay):
        MainDisplay.setObjectName("MainDisplay")
        MainDisplay.resize(1123, 903)
        MainDisplay.setStyleSheet("background-color: rgb(0, 170, 255);")
        self.centralwidget = QtWidgets.QWidget(MainDisplay)
        self.centralwidget.setObjectName("centralwidget")
        self.gridLayout = QtWidgets.QGridLayout(self.centralwidget)
        self.gridLayout.setObjectName("gridLayout")
        self.verticalLayout = QtWidgets.QVBoxLayout()
        self.verticalLayout.setContentsMargins(-1, 0, -1, 0)
        self.verticalLayout.setSpacing(6)
        self.verticalLayout.setObjectName("verticalLayout")
        self.AddItemButton = QtWidgets.QPushButton(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.AddItemButton.setFont(font)
        self.AddItemButton.setStyleSheet("background-color: rgb(85, 255, 0);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"\n"
"")
        self.AddItemButton.setObjectName("AddItemButton")
        self.verticalLayout.addWidget(self.AddItemButton)
        self.DeleteItemButton = QtWidgets.QPushButton(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.DeleteItemButton.setFont(font)
        self.DeleteItemButton.setStyleSheet("background-color: rgb(255, 65, 68);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.DeleteItemButton.setObjectName("DeleteItemButton")
        self.verticalLayout.addWidget(self.DeleteItemButton)
        self.CheckoutButton = QtWidgets.QPushButton(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.CheckoutButton.setFont(font)
        self.CheckoutButton.setStyleSheet("background-color: rgb(255, 255, 0);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.CheckoutButton.setObjectName("CheckoutButton")
        self.verticalLayout.addWidget(self.CheckoutButton)
        self.ReturnButton = QtWidgets.QPushButton(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.ReturnButton.setFont(font)
        self.ReturnButton.setStyleSheet("background-color: rgb(255, 170, 32);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.ReturnButton.setObjectName("ReturnButton")
        self.verticalLayout.addWidget(self.ReturnButton)
        self.ScanBarcodeButton = QtWidgets.QPushButton(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.ScanBarcodeButton.setFont(font)
        self.ScanBarcodeButton.setStyleSheet("background-color: rgb(211, 211, 211);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.ScanBarcodeButton.setObjectName("ScanBarcodeButton")
        self.verticalLayout.addWidget(self.ScanBarcodeButton)
        self.MoreInfoButton = QtWidgets.QPushButton(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.MoreInfoButton.setFont(font)
        self.MoreInfoButton.setStyleSheet("background-color: rgb(196, 17, 255);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;")
        self.MoreInfoButton.setObjectName("MoreInfoButton")
        self.verticalLayout.addWidget(self.MoreInfoButton)
        self.RefreshButton = QtWidgets.QPushButton(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.RefreshButton.setFont(font)
        self.RefreshButton.setStyleSheet("background-color: rgb(0, 255, 255);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"\n"
"")
        self.RefreshButton.setObjectName("RefreshButton")
        self.verticalLayout.addWidget(self.RefreshButton)
        spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.verticalLayout.addItem(spacerItem)
        self.LogoutButton = QtWidgets.QPushButton(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.LogoutButton.setFont(font)
        self.LogoutButton.setStyleSheet("background-color: rgb(255, 255, 255);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.LogoutButton.setObjectName("LogoutButton")
        self.verticalLayout.addWidget(self.LogoutButton)
        self.gridLayout.addLayout(self.verticalLayout, 4, 3, 1, 1)
        self.Header = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(15)
        font.setBold(True)
        font.setWeight(75)
        self.Header.setFont(font)
        self.Header.setStyleSheet("background-color: rgb(0, 0, 0);\n"
"color: rgb(255, 255, 255);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;")
        self.Header.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
        self.Header.setObjectName("Header")
        self.gridLayout.addWidget(self.Header, 0, 1, 1, 3)
        self.SearchButton = QtWidgets.QPushButton(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.SearchButton.setFont(font)
        self.SearchButton.setStyleSheet("background-color: rgb(211, 211, 211);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.SearchButton.setObjectName("SearchButton")
        self.gridLayout.addWidget(self.SearchButton, 2, 1, 1, 1)
        self.SearchBar = QtWidgets.QLineEdit(self.centralwidget)
        self.SearchBar.setStyleSheet("background-color: rgb(255, 255, 255);")
        self.SearchBar.setObjectName("SearchBar")
        self.gridLayout.addWidget(self.SearchBar, 2, 2, 1, 1)
        self.InventoryDisplay = QtWidgets.QTableWidget(self.centralwidget)
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.InventoryDisplay.setFont(font)
        self.InventoryDisplay.setStyleSheet("background-color: rgb(255, 255, 255);\n"
"")
        self.InventoryDisplay.setObjectName("InventoryDisplay")
        self.InventoryDisplay.setColumnCount(11)
        self.InventoryDisplay.setRowCount(0)
        item = QtWidgets.QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(0, item)
        item = QtWidgets.QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(1, item)
        item = QtWidgets.QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(2, item)
        item = QtWidgets.QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(3, item)
        item = QtWidgets.QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(4, item)
        item = QtWidgets.QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(5, item)
        item = QtWidgets.QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(6, item)
        item = QtWidgets.QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(7, item)
        item = QtWidgets.QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(8, item)
        item = QtWidgets.QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(9, item)
        item = QtWidgets.QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(10, item)
        self.gridLayout.addWidget(self.InventoryDisplay, 4, 1, 1, 2)
        MainDisplay.setCentralWidget(self.centralwidget)
        self.statusbar = QtWidgets.QStatusBar(MainDisplay)
        self.statusbar.setObjectName("statusbar")
        MainDisplay.setStatusBar(self.statusbar)

        self.retranslateUi(MainDisplay)
        QtCore.QMetaObject.connectSlotsByName(MainDisplay)

    def retranslateUi(self, MainDisplay):
        _translate = QtCore.QCoreApplication.translate
        MainDisplay.setWindowTitle(_translate("MainDisplay", "AdminMenu"))
        self.AddItemButton.setText(_translate("MainDisplay", "Add Item"))
        self.DeleteItemButton.setText(_translate("MainDisplay", "Delete Item"))
        self.CheckoutButton.setText(_translate("MainDisplay", "Check Out"))
        self.ReturnButton.setText(_translate("MainDisplay", "Return"))
        self.ScanBarcodeButton.setText(_translate("MainDisplay", "Scan Barcode"))
        self.MoreInfoButton.setText(_translate("MainDisplay", "More Info"))
        self.RefreshButton.setText(_translate("MainDisplay", "Refresh"))
        self.LogoutButton.setText(_translate("MainDisplay", "Log Out"))
        self.Header.setText(_translate("MainDisplay", "Admin Menu"))
        self.SearchButton.setText(_translate("MainDisplay", "Search"))
        item = self.InventoryDisplay.horizontalHeaderItem(0)
        item.setText(_translate("MainDisplay", "ID"))
        item = self.InventoryDisplay.horizontalHeaderItem(1)
        item.setText(_translate("MainDisplay", "Name"))
        item = self.InventoryDisplay.horizontalHeaderItem(2)
        item.setText(_translate("MainDisplay", "Quantity"))
        item = self.InventoryDisplay.horizontalHeaderItem(3)
        item.setText(_translate("MainDisplay", "Price ($)"))
        item = self.InventoryDisplay.horizontalHeaderItem(4)
        item.setText(_translate("MainDisplay", "Sell Price ($)"))
        item = self.InventoryDisplay.horizontalHeaderItem(5)
        item.setText(_translate("MainDisplay", "Description"))
        item = self.InventoryDisplay.horizontalHeaderItem(6)
        item.setText(_translate("MainDisplay", "Category"))
        item = self.InventoryDisplay.horizontalHeaderItem(7)
        item.setText(_translate("MainDisplay", "Location"))
        item = self.InventoryDisplay.horizontalHeaderItem(8)
        item.setText(_translate("MainDisplay", "Length (Ft)"))
        item = self.InventoryDisplay.horizontalHeaderItem(9)
        item.setText(_translate("MainDisplay", "Barcode #"))
        item = self.InventoryDisplay.horizontalHeaderItem(10)
        item.setText(_translate("MainDisplay", "Date Updated"))


if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    MainDisplay = QtWidgets.QMainWindow()
    ui = Ui_MainDisplay()
    ui.setupUi(MainDisplay)
    MainDisplay.show()
    sys.exit(app.exec())
You're using object instead of QMainWindow, so it can't work.

import sys
from PyQt5.QtWidgets import (QApplication, QWidget, QPushButton, QMainWindow, 
                                QLabel, QLineEdit, QTableWidget, QTableWidgetItem, 
                                QGridLayout, QVBoxLayout, QSizePolicy, QSpacerItem)
from PyQt5.QtCore import Qt, QMetaObject, QCoreApplication
from PyQt5.QtGui import QFont
 
class Ui_MainDisplay(QMainWindow):
    def __init__(self, parent = None):
        super(Ui_MainDisplay, self).__init__(parent)
        self.setObjectName("MainDisplay")
        self.setGeometry(0, 0, 1123, 903)
        self.setStyleSheet("background-color: rgb(0, 170, 255);")
        self.centralwidget = QWidget(self)
        self.centralwidget.setObjectName("centralwidget")
        self.gridLayout = QGridLayout(self.centralwidget)
        self.gridLayout.setObjectName("gridLayout")
        self.verticalLayout = QVBoxLayout()
        self.verticalLayout.setContentsMargins(-1, 0, -1, 0)
        self.verticalLayout.setSpacing(6)
        self.verticalLayout.setObjectName("verticalLayout")
        self.AddItemButton = QPushButton(self.centralwidget)
        font = QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.AddItemButton.setFont(font)
        self.AddItemButton.setStyleSheet("background-color: rgb(85, 255, 0);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"\n"
"")
        self.AddItemButton.setObjectName("AddItemButton")
        self.verticalLayout.addWidget(self.AddItemButton)
        self.DeleteItemButton = QPushButton(self.centralwidget)
        font = QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.DeleteItemButton.setFont(font)
        self.DeleteItemButton.setStyleSheet("background-color: rgb(255, 65, 68);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.DeleteItemButton.setObjectName("DeleteItemButton")
        self.verticalLayout.addWidget(self.DeleteItemButton)
        self.CheckoutButton = QPushButton(self.centralwidget)
        font = QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.CheckoutButton.setFont(font)
        self.CheckoutButton.setStyleSheet("background-color: rgb(255, 255, 0);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.CheckoutButton.setObjectName("CheckoutButton")
        self.verticalLayout.addWidget(self.CheckoutButton)
        self.ReturnButton = QPushButton(self.centralwidget)
        font = QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.ReturnButton.setFont(font)
        self.ReturnButton.setStyleSheet("background-color: rgb(255, 170, 32);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.ReturnButton.setObjectName("ReturnButton")
        self.verticalLayout.addWidget(self.ReturnButton)
        self.ScanBarcodeButton = QPushButton(self.centralwidget)
        font = QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.ScanBarcodeButton.setFont(font)
        self.ScanBarcodeButton.setStyleSheet("background-color: rgb(211, 211, 211);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.ScanBarcodeButton.setObjectName("ScanBarcodeButton")
        self.verticalLayout.addWidget(self.ScanBarcodeButton)
        self.MoreInfoButton = QPushButton(self.centralwidget)
        font = QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.MoreInfoButton.setFont(font)
        self.MoreInfoButton.setStyleSheet("background-color: rgb(196, 17, 255);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;")
        self.MoreInfoButton.setObjectName("MoreInfoButton")
        self.verticalLayout.addWidget(self.MoreInfoButton)
        self.RefreshButton = QPushButton(self.centralwidget)
        font = QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.RefreshButton.setFont(font)
        self.RefreshButton.setStyleSheet("background-color: rgb(0, 255, 255);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"\n"
"")
        self.RefreshButton.setObjectName("RefreshButton")
        self.verticalLayout.addWidget(self.RefreshButton)
        spacerItem = QSpacerItem(20, 40, QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Expanding)
        self.verticalLayout.addItem(spacerItem)
        self.LogoutButton = QPushButton(self.centralwidget)
        font = QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.LogoutButton.setFont(font)
        self.LogoutButton.setStyleSheet("background-color: rgb(255, 255, 255);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.LogoutButton.setObjectName("LogoutButton")
        self.verticalLayout.addWidget(self.LogoutButton)
        self.gridLayout.addLayout(self.verticalLayout, 4, 3, 1, 1)
        self.Header = QLabel(self.centralwidget)
        font = QFont()
        font.setPointSize(15)
        font.setBold(True)
        font.setWeight(75)
        self.Header.setFont(font)
        self.Header.setStyleSheet("background-color: rgb(0, 0, 0);\n"
"color: rgb(255, 255, 255);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;")
        self.Header.setAlignment(Qt.AlignmentFlag.AlignCenter)
        self.Header.setObjectName("Header")
        self.gridLayout.addWidget(self.Header, 0, 1, 1, 3)
        self.SearchButton = QPushButton(self.centralwidget)
        font = QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)import sys
from PyQt5.QtWidgets import (QApplication, QWidget, QPushButton, QMainWindow, 
                                QLabel, QLineEdit, QTableWidget, QTableWidgetItem, 
                                QGridLayout, QVBoxLayout, QSizePolicy, QSpacerItem)
from PyQt5.QtCore import Qt, QMetaObject, QCoreApplication
from PyQt5.QtGui import QFont
 
class Ui_MainDisplay(QMainWindow):
    def __init__(self, parent = None):
        super(Ui_MainDisplay, self).__init__(parent)
        self.setObjectName("MainDisplay")
        self.setGeometry(0, 0, 1123, 903)
        self.setStyleSheet("background-color: rgb(0, 170, 255);")
        self.centralwidget = QWidget(self)
        self.centralwidget.setObjectName("centralwidget")
        self.gridLayout = QGridLayout(self.centralwidget)
        self.gridLayout.setObjectName("gridLayout")
        self.verticalLayout = QVBoxLayout()
        self.verticalLayout.setContentsMargins(-1, 0, -1, 0)
        self.verticalLayout.setSpacing(6)
        self.verticalLayout.setObjectName("verticalLayout")
        self.AddItemButton = QPushButton(self.centralwidget)
        font = QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.AddItemButton.setFont(font)
        self.AddItemButton.setStyleSheet("background-color: rgb(85, 255, 0);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"\n"
"")
        self.AddItemButton.setObjectName("AddItemButton")
        self.verticalLayout.addWidget(self.AddItemButton)
        self.DeleteItemButton = QPushButton(self.centralwidget)
        font = QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.DeleteItemButton.setFont(font)
        self.DeleteItemButton.setStyleSheet("background-color: rgb(255, 65, 68);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.DeleteItemButton.setObjectName("DeleteItemButton")
        self.verticalLayout.addWidget(self.DeleteItemButton)
        self.CheckoutButton = QPushButton(self.centralwidget)
        font = QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.CheckoutButton.setFont(font)
        self.CheckoutButton.setStyleSheet("background-color: rgb(255, 255, 0);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.CheckoutButton.setObjectName("CheckoutButton")
        self.verticalLayout.addWidget(self.CheckoutButton)
        self.ReturnButton = QPushButton(self.centralwidget)
        font = QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.ReturnButton.setFont(font)
        self.ReturnButton.setStyleSheet("background-color: rgb(255, 170, 32);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.ReturnButton.setObjectName("ReturnButton")
        self.verticalLayout.addWidget(self.ReturnButton)
        self.ScanBarcodeButton = QPushButton(self.centralwidget)
        font = QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.ScanBarcodeButton.setFont(font)
        self.ScanBarcodeButton.setStyleSheet("background-color: rgb(211, 211, 211);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.ScanBarcodeButton.setObjectName("ScanBarcodeButton")
        self.verticalLayout.addWidget(self.ScanBarcodeButton)
        self.MoreInfoButton = QPushButton(self.centralwidget)
        font = QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.MoreInfoButton.setFont(font)
        self.MoreInfoButton.setStyleSheet("background-color: rgb(196, 17, 255);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;")
        self.MoreInfoButton.setObjectName("MoreInfoButton")
        self.verticalLayout.addWidget(self.MoreInfoButton)
        self.RefreshButton = QPushButton(self.centralwidget)
        font = QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.RefreshButton.setFont(font)
        self.RefreshButton.setStyleSheet("background-color: rgb(0, 255, 255);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"\n"
"")
        self.RefreshButton.setObjectName("RefreshButton")
        self.verticalLayout.addWidget(self.RefreshButton)
        spacerItem = QSpacerItem(20, 40, QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Expanding)
        self.verticalLayout.addItem(spacerItem)
        self.LogoutButton = QPushButton(self.centralwidget)
        font = QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.LogoutButton.setFont(font)
        self.LogoutButton.setStyleSheet("background-color: rgb(255, 255, 255);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.LogoutButton.setObjectName("LogoutButton")
        self.verticalLayout.addWidget(self.LogoutButton)
        self.gridLayout.addLayout(self.verticalLayout, 4, 3, 1, 1)
        self.Header = QLabel(self.centralwidget)
        font = QFont()
        font.setPointSize(15)
        font.setBold(True)
        font.setWeight(75)
        self.Header.setFont(font)
        self.Header.setStyleSheet("background-color: rgb(0, 0, 0);\n"
"color: rgb(255, 255, 255);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;")
        self.Header.setAlignment(Qt.AlignmentFlag.AlignCenter)
        self.Header.setObjectName("Header")
        self.gridLayout.addWidget(self.Header, 0, 1, 1, 3)
        self.SearchButton = QPushButton(self.centralwidget)
        font = QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.SearchButton.setFont(font)
        self.SearchButton.setStyleSheet("background-color: rgb(211, 211, 211);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.SearchButton.setObjectName("SearchButton")
        self.gridLayout.addWidget(self.SearchButton, 2, 1, 1, 1)
        self.SearchBar = QLineEdit(self.centralwidget)
        self.SearchBar.setStyleSheet("background-color: rgb(255, 255, 255);")
        self.SearchBar.setObjectName("SearchBar")
        self.gridLayout.addWidget(self.SearchBar, 2, 2, 1, 1)
        self.InventoryDisplay = QTableWidget(self.centralwidget)
        font = QFont()
        font.setBold(False)
        font.setWeight(50)
        self.InventoryDisplay.setFont(font)
        self.InventoryDisplay.setStyleSheet("background-color: rgb(255, 255, 255);\n"
"")
        self.InventoryDisplay.setObjectName("InventoryDisplay")
        self.InventoryDisplay.setColumnCount(11)
        self.InventoryDisplay.setRowCount(0)
        item = QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(0, item)
        item = QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(1, item)
        item = QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(2, item)
        item = QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(3, item)
        item = QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(4, item)
        item = QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(5, item)
        item = QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(6, item)
        item = QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(7, item)
        item = QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(8, item)
        item = QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(9, item)
        item = QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(10, item)
        self.gridLayout.addWidget(self.InventoryDisplay, 4, 1, 1, 2)
        self.setCentralWidget(self.centralwidget)
        self.statusbar = self.statusBar()
        self.statusbar.setObjectName("statusbar")
        #self.setStatusBar(self.statusbar)
 
        self.retranslateUi(self)
        QMetaObject.connectSlotsByName(self)
 
    def retranslateUi(self, MainDisplay):
        _translate = QCoreApplication.translate
        self.setWindowTitle(_translate("MainDisplay", "AdminMenu"))
        self.AddItemButton.setText(_translate("MainDisplay", "Add Item"))
        self.DeleteItemButton.setText(_translate("MainDisplay", "Delete Item"))
        self.CheckoutButton.setText(_translate("MainDisplay", "Check Out"))
        self.ReturnButton.setText(_translate("MainDisplay", "Return"))
        self.ScanBarcodeButton.setText(_translate("MainDisplay", "Scan Barcode"))
        self.MoreInfoButton.setText(_translate("MainDisplay", "More Info"))
        self.RefreshButton.setText(_translate("MainDisplay", "Refresh"))
        self.LogoutButton.setText(_translate("MainDisplay", "Log Out"))
        self.Header.setText(_translate("MainDisplay", "Admin Menu"))
        self.SearchButton.setText(_translate("MainDisplay", "Search"))
        item = self.InventoryDisplay.horizontalHeaderItem(0)
        item.setText(_translate("MainDisplay", "ID"))
        item = self.InventoryDisplay.horizontalHeaderItem(1)
        item.setText(_translate("MainDisplay", "Name"))
        item = self.InventoryDisplay.horizontalHeaderItem(2)
        item.setText(_translate("MainDisplay", "Quantity"))
        item = self.InventoryDisplay.horizontalHeaderItem(3)
        item.setText(_translate("MainDisplay", "Price ($)"))
        item = self.InventoryDisplay.horizontalHeaderItem(4)
        item.setText(_translate("MainDisplay", "Sell Price ($)"))
        item = self.InventoryDisplay.horizontalHeaderItem(5)
        item.setText(_translate("MainDisplay", "Description"))
        item = self.InventoryDisplay.horizontalHeaderItem(6)
        item.setText(_translate("MainDisplay", "Category"))
        item = self.InventoryDisplay.horizontalHeaderItem(7)
        item.setText(_translate("MainDisplay", "Location"))
        item = self.InventoryDisplay.horizontalHeaderItem(8)
        item.setText(_translate("MainDisplay", "Length (Ft)"))
        item = self.InventoryDisplay.horizontalHeaderItem(9)
        item.setText(_translate("MainDisplay", "Barcode #"))
        item = self.InventoryDisplay.horizontalHeaderItem(10)
        item.setText(_translate("MainDisplay", "Date Updated"))


if __name__ == '__main__':
    app = QApplication(sys.argv)
    win = Ui_MainDisplay()
    win.show()
 
    sys.exit(app.exec_())
        self.SearchButton.setFont(font)
        self.SearchButton.setStyleSheet("background-color: rgb(211, 211, 211);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.SearchButton.setObjectName("SearchButton")
        self.gridLayout.addWidget(self.SearchButton, 2, 1, 1, 1)
        self.SearchBar = QLineEdit(self.centralwidget)
        self.SearchBar.setStyleSheet("background-color: rgb(255, 255, 255);")
        self.SearchBar.setObjectName("SearchBar")
        self.gridLayout.addWidget(self.SearchBar, 2, 2, 1, 1)
        self.InventoryDisplay = QTableWidget(self.centralwidget)
        font = QFont()
        font.setBold(False)
        font.setWeight(50)
        self.InventoryDisplay.setFont(font)
        self.InventoryDisplay.setStyleSheet("background-color: rgb(255, 255, 255);\n"
"")
        self.InventoryDisplay.setObjectName("InventoryDisplay")
        self.InventoryDisplay.setColumnCount(11)
        self.InventoryDisplay.setRowCount(0)
        item = QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(0, item)
        item = QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(1, item)
        item = QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(2, item)
        item = QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(3, item)
        item = QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(4, item)
        item = QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(5, item)
        item = QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(6, item)
        item = QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(7, item)
        item = QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(8, item)
        item = QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(9, item)
        item = QTableWidgetItem()
        self.InventoryDisplay.setHorizontalHeaderItem(10, item)
        self.gridLayout.addWidget(self.InventoryDisplay, 4, 1, 1, 2)
        self.setCentralWidget(self.centralwidget)
        self.statusbar = self.statusBar()
        self.statusbar.setObjectName("statusbar")
        #self.setStatusBar(self.statusbar)
 
        self.retranslateUi(self)
        QMetaObject.connectSlotsByName(self)
 
    def retranslateUi(self, MainDisplay):
        _translate = QCoreApplication.translate
        self.setWindowTitle(_translate("MainDisplay", "AdminMenu"))
        self.AddItemButton.setText(_translate("MainDisplay", "Add Item"))
        self.DeleteItemButton.setText(_translate("MainDisplay", "Delete Item"))
        self.CheckoutButton.setText(_translate("MainDisplay", "Check Out"))
        self.ReturnButton.setText(_translate("MainDisplay", "Return"))
        self.ScanBarcodeButton.setText(_translate("MainDisplay", "Scan Barcode"))
        self.MoreInfoButton.setText(_translate("MainDisplay", "More Info"))
        self.RefreshButton.setText(_translate("MainDisplay", "Refresh"))
        self.LogoutButton.setText(_translate("MainDisplay", "Log Out"))
        self.Header.setText(_translate("MainDisplay", "Admin Menu"))
        self.SearchButton.setText(_translate("MainDisplay", "Search"))
        item = self.InventoryDisplay.horizontalHeaderItem(0)
        item.setText(_translate("MainDisplay", "ID"))
        item = self.InventoryDisplay.horizontalHeaderItem(1)
        item.setText(_translate("MainDisplay", "Name"))
        item = self.InventoryDisplay.horizontalHeaderItem(2)
        item.setText(_translate("MainDisplay", "Quantity"))
        item = self.InventoryDisplay.horizontalHeaderItem(3)
        item.setText(_translate("MainDisplay", "Price ($)"))
        item = self.InventoryDisplay.horizontalHeaderItem(4)
        item.setText(_translate("MainDisplay", "Sell Price ($)"))
        item = self.InventoryDisplay.horizontalHeaderItem(5)
        item.setText(_translate("MainDisplay", "Description"))
        item = self.InventoryDisplay.horizontalHeaderItem(6)
        item.setText(_translate("MainDisplay", "Category"))
        item = self.InventoryDisplay.horizontalHeaderItem(7)
        item.setText(_translate("MainDisplay", "Location"))
        item = self.InventoryDisplay.horizontalHeaderItem(8)
        item.setText(_translate("MainDisplay", "Length (Ft)"))
        item = self.InventoryDisplay.horizontalHeaderItem(9)
        item.setText(_translate("MainDisplay", "Barcode #"))
        item = self.InventoryDisplay.horizontalHeaderItem(10)
        item.setText(_translate("MainDisplay", "Date Updated"))


if __name__ == '__main__':
    app = QApplication(sys.argv)
    win = Ui_MainDisplay()
    win.show()
 
    sys.exit(app.exec_())
Thanks so Much that helped! The AdminMenu now opens when after I login.

The only problem I have now is that I get this error and the LoginScreen won't close:
Error:
line 142, in LoginClicked self.close() AttributeError: 'Ui_Loginscreen' object has no attribute 'close'
Does my LoginScreen.py have to use QMainWindow as well in order for it to work, or can I do something else?

Thanks in advance.

Here the LoginScreen code:
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWidgets import QMessageBox

from DataBases.UserDatabase import StandardUsers, SuperUsers

from Test import Ui_MainDisplay

class Ui_Loginscreen(object):
    def setupUi(self, Loginscreen):
        Loginscreen.setObjectName("Loginscreen")
        Loginscreen.resize(1108, 895)
        Loginscreen.setStyleSheet("background-color: rgb(0, 170, 255);")
        self.centralwidget = QtWidgets.QWidget(Loginscreen)
        self.centralwidget.setObjectName("centralwidget")
        self.gridLayout = QtWidgets.QGridLayout(self.centralwidget)
        self.gridLayout.setObjectName("gridLayout")
        self.Header = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(20)
        font.setBold(True)
        font.setWeight(75)
        self.Header.setFont(font)
        self.Header.setAlignment(QtCore.Qt.AlignCenter)
        self.Header.setObjectName("Header")
        self.gridLayout.addWidget(self.Header, 0, 0, 1, 1)
        self.formLayout_2 = QtWidgets.QFormLayout()
        self.formLayout_2.setObjectName("formLayout_2")
        self.NameLabel = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.NameLabel.setFont(font)
        self.NameLabel.setObjectName("NameLabel")
        self.formLayout_2.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.NameLabel)
        self.NameInput = QtWidgets.QLineEdit(self.centralwidget)
        self.NameInput.setStyleSheet("background-color: rgb(255, 255, 255);")
        self.NameInput.setText("")
        self.NameInput.setObjectName("NameInput")
        self.formLayout_2.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.NameInput)
        self.PasswordLabel = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.PasswordLabel.setFont(font)
        self.PasswordLabel.setObjectName("PasswordLabel")
        self.formLayout_2.setWidget(1, QtWidgets.QFormLayout.LabelRole, self.PasswordLabel)
        self.PasswordInput = QtWidgets.QLineEdit(self.centralwidget)
        font = QtGui.QFont()
        font.setFamily("Wingdings")
        self.PasswordInput.setFont(font)
        self.PasswordInput.setStyleSheet("background-color: rgb(255, 255, 255);")
        self.PasswordInput.setText("")
        self.PasswordInput.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter)
        self.PasswordInput.setObjectName("PasswordInput")
        self.formLayout_2.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.PasswordInput)
        self.label = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(8)
        font.setItalic(True)
        self.label.setFont(font)
        self.label.setAlignment(QtCore.Qt.AlignCenter)
        self.label.setObjectName("label")
        self.formLayout_2.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.label)
        spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
        self.formLayout_2.setItem(3, QtWidgets.QFormLayout.FieldRole, spacerItem)
        self.LoginButton = QtWidgets.QPushButton(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.LoginButton.setFont(font)
        self.LoginButton.setStyleSheet("background-color: rgb(211, 211, 211);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.LoginButton.setObjectName("LoginButton")
        self.formLayout_2.setWidget(4, QtWidgets.QFormLayout.FieldRole, self.LoginButton)
        self.gridLayout.addLayout(self.formLayout_2, 1, 0, 1, 1)
        Loginscreen.setCentralWidget(self.centralwidget)
        self.statusbar = QtWidgets.QStatusBar(Loginscreen)
        self.statusbar.setObjectName("statusbar")
        Loginscreen.setStatusBar(self.statusbar)

        self.retranslateUi(Loginscreen)
        QtCore.QMetaObject.connectSlotsByName(Loginscreen)

    def retranslateUi(self, Loginscreen):
        _translate = QtCore.QCoreApplication.translate
        Loginscreen.setWindowTitle(_translate("Loginscreen", "E.I.S"))
        self.Header.setText(_translate("Loginscreen", "Electronic Inventory System (E.I.S)"))
        self.NameLabel.setText(_translate("Loginscreen", "Name"))
        self.PasswordLabel.setText(_translate("Loginscreen", "Password"))
        self.label.setText(_translate("Loginscreen", "\n"
"\n"
"\n"
"\n"
"Electronic Inventory System (E.I.S)\n"
"Version: 2.6\n"
"Developed By: Paglia Industries\n"
"Last Updated: 05/11/2022\n"
"\n"
"\n"
""))
        self.LoginButton.setText(_translate("Loginscreen", "Log In"))

        #------------------------------------------
                        #Actions
        #------------------------------------------
        #When the Login button is clicked -> LoginClicked Function
        LoginButton = self.LoginButton
        LoginButton.clicked.connect(self.LoginClicked)
        #------------------------------------------
#----------------------------------
    #Store Name and Password
    def LoginClicked(self):
        userInputName = self.NameInput.text()
        userInputPassword = self.PasswordInput.text()
        #Print in terminal for testing:
        print("The Login Button was clicked")
        print("Name: " + userInputName)
        print("Password: " + userInputPassword)

        #Validate Login Info
        if StandardUsers().get(userInputName) == userInputPassword:
            print('Success! You are now logged in as: ' + userInputName)
            #Switch from this screen to the MainMenu Screen
            #mainMenu()

        if SuperUsers().get(userInputName) == userInputPassword:
            print('Success! You are now logged in as: ' + userInputName)
            #Switch from this screen to the AdminMenu Screen
            #adminMenu()

            #Scene Swap Test:
            self.win = Ui_MainDisplay()
            self.win.show()
            self.close()

        else:
            #Call Invalid Credentials Popup
            self.invalidCredentials()
            print('You are not registered to use this program')
#----------------------------------
#-----------------------------------------------------------------
    #Invalid Credentails Popup:
    def invalidCredentials(self):
        msgBox = QMessageBox()
        msgBox.setIcon(QMessageBox.Critical)
        msgBox.setText("You are not registered to use this program")
        msgBox.setWindowTitle("Invalid Credentials")
        msgBox.setStandardButtons(QMessageBox.Ok)
        msgBox.buttonClicked.connect(msgButtonClick)

        returnValue = msgBox.exec()
        if returnValue == QMessageBox.Ok:
            print('OK was clicked')
        
def msgButtonClick(i):
    print("Button clicked is:",i.text())
#-----------------------------------------------------------------


if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    Loginscreen = QtWidgets.QMainWindow()
    ui = Ui_Loginscreen()
    ui.setupUi(Loginscreen)
    Loginscreen.show()
    sys.exit(app.exec_())
try this

from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWidgets import QMessageBox
 
from DataBases.UserDatabase import StandardUsers, SuperUsers
 
from Test import Ui_MainDisplay
 
class Ui_Loginscreen(QtWidgets.QMainWindow):
    def __init__(self, parent = None):
        super(Ui_Loginscreen, self).__init__(parent)
        self.setObjectName("Loginscreen")
        self.resize(1108, 895)
        self.setStyleSheet("background-color: rgb(0, 170, 255);")
        self.centralwidget = QtWidgets.QWidget()
        self.centralwidget.setObjectName("centralwidget")
        self.gridLayout = QtWidgets.QGridLayout(self.centralwidget)
        self.gridLayout.setObjectName("gridLayout")
        self.Header = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(20)
        font.setBold(True)
        font.setWeight(75)
        self.Header.setFont(font)
        self.Header.setAlignment(QtCore.Qt.AlignCenter)
        self.Header.setObjectName("Header")
        self.gridLayout.addWidget(self.Header, 0, 0, 1, 1)
        self.formLayout_2 = QtWidgets.QFormLayout()
        self.formLayout_2.setObjectName("formLayout_2")
        self.NameLabel = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.NameLabel.setFont(font)
        self.NameLabel.setObjectName("NameLabel")
        self.formLayout_2.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.NameLabel)
        self.NameInput = QtWidgets.QLineEdit(self.centralwidget)
        self.NameInput.setStyleSheet("background-color: rgb(255, 255, 255);")
        self.NameInput.setText("")
        self.NameInput.setObjectName("NameInput")
        self.formLayout_2.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.NameInput)
        self.PasswordLabel = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.PasswordLabel.setFont(font)
        self.PasswordLabel.setObjectName("PasswordLabel")
        self.formLayout_2.setWidget(1, QtWidgets.QFormLayout.LabelRole, self.PasswordLabel)
        self.PasswordInput = QtWidgets.QLineEdit(self.centralwidget)
        font = QtGui.QFont()
        font.setFamily("Wingdings")
        self.PasswordInput.setFont(font)
        self.PasswordInput.setStyleSheet("background-color: rgb(255, 255, 255);")
        self.PasswordInput.setText("")
        self.PasswordInput.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter)
        self.PasswordInput.setObjectName("PasswordInput")
        self.formLayout_2.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.PasswordInput)
        self.label = QtWidgets.QLabel(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(8)
        font.setItalic(True)
        self.label.setFont(font)
        self.label.setAlignment(QtCore.Qt.AlignCenter)
        self.label.setObjectName("label")
        self.formLayout_2.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.label)
        spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
        self.formLayout_2.setItem(3, QtWidgets.QFormLayout.FieldRole, spacerItem)
        self.LoginButton = QtWidgets.QPushButton(self.centralwidget)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(True)
        font.setWeight(75)
        self.LoginButton.setFont(font)
        self.LoginButton.setStyleSheet("background-color: rgb(211, 211, 211);\n"
"border-style: outset;\n"
"border-width: 2px;\n"
"border-radius: 15px;\n"
"border-color: black;\n"
"padding: 4px;\n"
"")
        self.LoginButton.setObjectName("LoginButton")
        self.formLayout_2.setWidget(4, QtWidgets.QFormLayout.FieldRole, self.LoginButton)
        self.gridLayout.addLayout(self.formLayout_2, 1, 0, 1, 1)
        self.setCentralWidget(self.centralwidget)
        self.statusbar = QtWidgets.QStatusBar()
        self.statusbar.setObjectName("statusbar")
        self.setStatusBar(self.statusbar)
 
        self.retranslateUi()
        QtCore.QMetaObject.connectSlotsByName(self)
 
    def retranslateUi(self):
        _translate = QtCore.QCoreApplication.translate
        self.setWindowTitle(_translate("Loginscreen", "E.I.S"))
        self.Header.setText(_translate("Loginscreen", "Electronic Inventory System (E.I.S)"))
        self.NameLabel.setText(_translate("Loginscreen", "Name"))
        self.PasswordLabel.setText(_translate("Loginscreen", "Password"))
        self.label.setText(_translate("Loginscreen", "\n"
"\n"
"\n"
"\n"
"Electronic Inventory System (E.I.S)\n"
"Version: 2.6\n"
"Developed By: Paglia Industries\n"
"Last Updated: 05/11/2022\n"
"\n"
"\n"
""))
        self.LoginButton.setText(_translate("Loginscreen", "Log In"))
 
        #------------------------------------------
                        #Actions
        #------------------------------------------
        #When the Login button is clicked -> LoginClicked Function
        LoginButton = self.LoginButton
        LoginButton.clicked.connect(self.LoginClicked)
        #------------------------------------------
#----------------------------------
    #Store Name and Password
    def LoginClicked(self):
        userInputName = self.NameInput.text()
        userInputPassword = self.PasswordInput.text()
        #Print in terminal for testing:
        print("The Login Button was clicked")
        print("Name: " + userInputName)
        print("Password: " + userInputPassword)
 
        #Validate Login Info
        if StandardUsers().get(userInputName) == userInputPassword:
            print('Success! You are now logged in as: ' + userInputName)
            #Switch from this screen to the MainMenu Screen
            #mainMenu()
 
        if SuperUsers().get(userInputName) == userInputPassword:
            print('Success! You are now logged in as: ' + userInputName)
            #Switch from this screen to the AdminMenu Screen
            #adminMenu()
 
            #Scene Swap Test:
            self.win = Ui_MainDisplay.Ui_MainDisplay()
            self.win.show()
            self.close()
 
        else:
            #Call Invalid Credentials Popup
            self.invalidCredentials()
            print('You are not registered to use this program')
#----------------------------------
#-----------------------------------------------------------------
    #Invalid Credentails Popup:
    def invalidCredentials(self):
        msgBox = QMessageBox()
        msgBox.setIcon(QMessageBox.Critical)
        msgBox.setText("You are not registered to use this program")
        msgBox.setWindowTitle("Invalid Credentials")
        msgBox.setStandardButtons(QMessageBox.Ok)
        msgBox.buttonClicked.connect(msgButtonClick)
 
        returnValue = msgBox.exec()
        if returnValue == QMessageBox.Ok:
            print('OK was clicked')
         
def msgButtonClick(i):
    print("Button clicked is:",i.text())
#-----------------------------------------------------------------
 
 
if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    ui = Ui_Loginscreen()
    ui.show()
    sys.exit(app.exec_())
It worked!
Thanks for all the help, I really appreciate it.

I Just had to change:
self.win = Ui_MainDisplay.Ui_MainDisplay()
To:
      self.win = Ui_MainDisplay()
In order to get it to function properly.

I have two more questions (last ones, I promise :)

1) In my AdminMenu I am trying to have it return to the LoginScreen if the Logout buttin is clicked.
I have this:
from LoginScreen import Ui_Loginscreen
    #Logout
    def LogoutClicked(self):
        #Print in terminal for testing:
        print("The Logout Button was clicked")
        #Switch from this screen to the LoginScreen
        #Scene Swap:
        self.win = Ui_Loginscreen()
        self.win.show()
        self.close()
But I get:
Error:
from AdminMenu import Ui_MainDisplay ImportError: cannot import name 'Ui_MainDisplay' from partially initialized module 'AdminMenu' (most likely due to a circular import)
Is there a way to return to the previous screen or not do a circular import?

2) This is a quick side question:

I do: pyuic5 -x {The ui file.ui -> Just drag the ui file into the terminal & it will make the path} -o {output py file.py -> drag the ui file into the terminal and rename it to .py}
to convert my UI file to a Py file. When it does that conversion it uses Object instead of QMainWindow. I'm wondering if there's a way/software that can convert it from Object to QMainWindow, or do you just have to do it by hand?

Just wondering for future reference.

Thanks.
Pages: 1 2