基础
2022/9/14原创小于 1 分钟约 233 字
应用入口
# -*- coding: UTF-8 -*-
import sys
from PyQt5.QtWidgets import QApplication,QMainWindow
from ui.login import Ui_LoginWindow
from ui.main import Ui_MainWindow
from qt_material import apply_stylesheet
from ui.frm_demo import Ui_FrmDemoWindow
import ui.source_rc
class login_window(Ui_LoginWindow,QMainWindow):
def __init__(self):
super(login_window, self).__init__()
self.setupUi(self)
class main_window(Ui_MainWindow,QMainWindow):
def __init__(self):
super(main_window, self).__init__()
self.setupUi(self)
class frm_demo_window(Ui_FrmDemoWindow,QMainWindow):
def __init__(self):
super(frm_demo_window,self).__init__()
self.setupUi(self)
def main():
app = QApplication(sys.argv)
apply_stylesheet(app, theme='dark_teal.xml')
w=frm_demo_window()
w.setWindowTitle('登录')
w.show()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
窗体
resize窗体大小
def resizeEvent(self, event):
w = event.size().width()
h = event.size().height()
self.tableWidget.resize(w, h)
self.tableWidget.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)
self.tableWidget.setAlternatingRowColors(True)
多窗体跳转
# 多窗口跳转定义:self.frm=frm() self.frm.show()
class login(Ui_loginWindow,QMainWindow):
def __init__(self):
super(Ui_loginWindow,self).__init__()
self.setupUi(self)
self.pushButton.clicked.connect(self.btn)
def btn(self):
from demo4 import HelloWorldUI
self.frm=HelloWorldUI()
self.frm.show()
设置窗口图标
icon = QIcon()
icon.addFile(u"image/logo.ico", QSize(), QIcon.Normal, QIcon.Off)
self.setWindowIcon(icon)
最顶端 永远在最前面 无边框(无法拖动)
self.setWindowFlags(Qt.WindowMaximizeButtonHint | Qt.WindowStaysOnTopHint | Qt.FramelessWindowHint)
美化
- QSS