【PyQt】通过load ui来实现菜单栏

@[toc]通过load ui来实现菜单栏

通过load ui来实现菜单栏

在 PyQt 或 PySide 中,可以通过加载 .ui 文件来实现菜单栏的设计。.ui 文件是使用 Qt Designer 创建的界面设计文件,它可以用 XML 格式描述界面布局和组件。通过加载 .ui 文件,可以快速实现复杂的界面设计,包括菜单栏。

创建流程

1.使用QT Designer创建一个基本的ui文件。
2.创建主窗口QMainWindow
3.在窗口中添加菜单栏(QMenuBar),并在菜单栏中添加菜单项(QMenu)和动作(QAction)。

代码示例

python 复制代码
import sys
import shutil
from PyQt5.QtGui import QIcon
from PyQt5.QtWidgets import *
from PyQt5 import uic
class MyWindow(QMainWindow):

    def __init__(self):
        super().__init__()
        self.init_ui()

    def init_ui(self):
        # 主窗口的设置


        self.ui = uic.loadUi("./Main_window.ui")
        # 加载好ui文件之后再进行设置菜单栏
        menu = self.ui.menubar
        # menu.setNativeMenuBar(False)
        file_menu = menu.addMenu("文件")
        file_menu.addAction("新建")
        file_menu.addAction("打开")
        file_menu.addAction("保存")

        edit_menu = menu.addMenu("编辑")
        edit_menu.addAction("复制")
        edit_menu.addAction("粘贴")
        edit_menu.addAction("剪切")

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

    w = MyWindow()
    # 展示窗口
    w.ui.show()

    app.exec()

代码效果

相关推荐
Java Fans2 小时前
Qt Designer 和 PyQt 开发教程
开发语言·qt·pyqt
lin62534229 小时前
Android右滑解锁UI,带背景流动渐变动画效果
android·ui
hnlgzb10 小时前
material3和xml的UI会相差很大么?
xml·ui
kylinmin11 小时前
卸载微软电脑管家:一次性彻底移除
前端·ui·xhtml
Wiktok14 小时前
【WIT】解决导入pywinauto相关库会导致程序UI界面(tkinter/pyside6)浏览文件等操作卡住问题
python·ui·pywinauto
lin625342214 小时前
Android九宫格,1张图到9张图适配;图片自定义UI
android·ui·kotlin
解局易否结局15 小时前
鸿蒙UI开发中Flutter的现状与鸿蒙系统UI生态未来方向
flutter·ui·harmonyos
晚霞的不甘15 小时前
Flutter + OpenHarmony 设计系统实战:构建统一、美观、无障碍的跨端 UI 体系
flutter·ui
黑臂麒麟15 小时前
DevUI modal 弹窗表单联动实战:表格编辑功能完整实现
前端·javascript·ui·angular.js