显示效果:
代码段:MainWin.py
#所有界面的父亲:QWidget
from PyQt5.QtGui import QIcon, QPalette, QBrush, QPixmap
from PyQt5.QtWidgets import QWidget, QApplication, QLabel, QPushButton
import sys
from LoginWin import loginWidget
from Register2 import registerWidget
class MainWin(QWidget):
def __init__(self):
#构造函数
super().__init__()
#创建需要的标签
self.setWindowTitle("车牌识别") #设置标题
self.resize(630,480) #固定尺寸
#设置左上角的Logo
self.setWindowIcon(QIcon("./img/comic.png"))
self.resize(630,480) #固定尺寸
#设置背景
palatte=QPalette()
palatte.setBrush(self.backgroundRole(),QBrush(QPixmap("./img/background.jpg")))
self.setPalette(palatte)
self.labName = QLabel("基于Opencv的车牌识别系统", self)
self.labName.setStyleSheet("color:white")
self.labName.setGeometry(230, 150, 250, 40) #(x,y,width,height)
self.regbtn=QPushButton("注册",self)
self.regbtn.setGeometry(175,200,100,30)
self.logbtn=QPushButton("登录",self)
self.logbtn.setGeometry(365,200,100,30)
#界面与槽的跳转 1.通过connct与相应的槽函数建立关系 在槽函数中通过创建类的对象 然后调用show方法即可
#pyqt里面核心机制--信号与槽
self.logbtn.clicked.connect(self.show_login)
self.regbtn.clicked.connect(self.show_reg)
def show_login(self):
self.close()#或者用self.hide()隐藏掉
#注意!下面把self(也就是MainWin作为参数传入)
self.login=loginWidget(self) #创建对象 把LoginWin.py文件导进来 点击按钮实现界面的跳转
self.login.show()
pass
def show_reg(self):
self.close()#或者用self.hide()隐藏掉
#显示注册界面
self.reg=registerWidget(self)
self.reg.show()
pass
if __name__ == '__main__':
app=QApplication(sys.argv) #应用程序
MainWindow=MainWin() #创建一个登陆窗口
MainWindow.show() #显示窗口
sys.exit(app.exec_())