python通過PyQt5實現登錄界面的示例代碼

今天為大傢介紹一個利用開發登錄界面模板,基於pyqt5庫,pyqt5這也一個PythonGUI界面開發的庫,非常強

本例,展示瞭通過登錄界面打開主界面的實現方式。

在開始實現登錄界面前,先給大傢普及一下PyQt5的安裝以及使用

1. pyQt5簡單使用

安裝

pip install PyQt5
pip3.5 install pyqt5-tools 

界面化操作

1.在win+R中輸入designer並敲回車,即可啟動Designer。一般選擇“Main Window”點擊“Create”即可創建。

若在win+R中輸入designer並敲回車後無反應,可以直接搜designer.exe直接啟動

 2.創建後,可以方便快捷的用Qt Designer畫出對應框體,如通過Combo Box添加下拉選擇的控件;通過Push Button添加按鈕;通過List Widget添加列表框;通過Table Widget添加數據表格框,table中設置列數(右鍵-Edit Items-Colums),調整框體位置和文字大小,背景顏色以及windowTitle來優化界面顯示,使用快捷鍵Ctrl+R預覽當前編寫的GUI顯示如下:

3.點擊保存,生成*.ui的文件,本例中為test.ui,保存在D:\py\deploy文件夾下

2.開始實現登錄界面

import sys
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
from PyQt5.QtGui import *
#創建主窗口
class MainWindow(QMainWindow):
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.setWindowTitle('主界面')
        self.showMaximized()
#對話框
class logindialog(QDialog):
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.setWindowTitle('登錄界面')
        self.resize(200, 200)
        self.setFixedSize(self.width(), self.height())
        self.setWindowFlags(Qt.WindowCloseButtonHint)

        ###### 設置界面控件
        self.frame = QFrame(self)
        self.verticalLayout = QVBoxLayout(self.frame)

        self.lineEdit_account = QLineEdit()
        self.lineEdit_account.setPlaceholderText("請輸入賬號")
        self.verticalLayout.addWidget(self.lineEdit_account)

        self.lineEdit_password = QLineEdit()
        self.lineEdit_password.setPlaceholderText("請輸入密碼")
        self.verticalLayout.addWidget(self.lineEdit_password)

        self.pushButton_enter = QPushButton()
        self.pushButton_enter.setText("確定")
        self.verticalLayout.addWidget(self.pushButton_enter)

        self.pushButton_quit = QPushButton()
        self.pushButton_quit.setText("取消")
        self.verticalLayout.addWidget(self.pushButton_quit)

        ###### 綁定按鈕事件
        self.pushButton_enter.clicked.connect(self.on_pushButton_enter_clicked)
        self.pushButton_quit.clicked.connect(QCoreApplication.instance().quit)

    def on_pushButton_enter_clicked(self):
        # 賬號判斷
        if self.lineEdit_account.text() == "":
            return

        # 密碼判斷
        if self.lineEdit_password.text() == "":
            return

        # 通過驗證,關閉對話框並返回1
        self.accept()

#程序入門
if __name__ == "__main__":
    app = QApplication(sys.argv)
    dialog = logindialog()
    if  dialog.exec_()==QDialog.Accepted:
        the_window = MainWindow()
        the_window.show()
        sys.exit(app.exec_())

到此這篇關於python通過PyQt5實現登錄界面的示例代碼的文章就介紹到這瞭,更多相關PyQt5 登錄界面內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: