简介
最近在用pyqt进行软件开发,在查阅资料的过程中发现缺乏成熟的模板,大部分还是简单的布局,我自己制作了一个通用的布局模板,分享给大家使用,如果对你有帮助,希望可以给作者点赞或者关注。
最终效果
顶部为软件导航栏,左侧为一个可以滚动的菜单栏,右侧为主体内容,此模板为纯UI,并未书写任何功能代码。
提示:你可以在此基础上更改UI,添加功能,实现你想要达到的效果
全部代码(含注释)
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QDesktopWidget, QVBoxLayout, QHBoxLayout, QGridLayout, QLabel,\
QPushButton, QScrollArea, QFrame
from PyQt5.QtGui import QPalette, QColor, QLinearGradient
import ctypes
class MainWindow(QWidget):
def __init__(self):
super(MainWindow, self).__init__()
self.setWindowTitle('布局模板')
# 窗口配置(大小和位置)
user32 = ctypes.windll.user32
# 调用 GetSystemMetrics 函数获取屏幕分辨率
screen_width = user32.GetSystemMetrics(0)
screen_height = user32.GetSystemMetrics(1)
self.resize(int(screen_width * 0.6), int(screen_height * 0.65))
qr = self.frameGeometry()
cp = QDesktopWidget().availableGeometry().center()
qr.moveCenter(cp)
self.background_color()
# 总布局
self.main_layout = QVBoxLayout() # 创建主部件的垂直布局
self.setLayout(self.main_layout) # 设置窗口主部件布局
self.top_widget = QWidget()
self.top_widget.setFixedHeight(int(screen_height*0.06))
self.top_layout = QHBoxLayout()
self.top_widget.setLayout(self.top