📜  Qmenubar pyqt - Python (1)

📅  最后修改于: 2023-12-03 15:34:34.164000             🧑  作者: Mango

QMenuBar PyQt - Python

QMenuBar是PyQt库中的组件之一,用于创建应用程序的菜单栏。菜单栏通常位于窗口的顶部,包含多个菜单,每个菜单可能包含多个下拉选项。这是用户交互的一部分,使得应用程序可以提供各种功能。

创建QMenuBar

要创建QMenuBar,我们将在主窗口中添加代码来创建QMenuBar对象并将其添加到窗口中。

from PyQt5.QtWidgets import QMainWindow, QMenuBar

class MyWindow(QMainWindow):
    def __init__(self):
        super().__init__()

        menu_bar = QMenuBar(self)
        self.setMenuBar(menu_bar)
添加菜单

要添加菜单,我们可以使用QMenuBar的addMenu()方法。在这个方法中,我们需要创建一个QMenu对象并将其添加到菜单栏中。

menu = QMenu("File", self)
menu_bar.addMenu(menu)
添加下拉菜单项

添加下拉菜单项也很简单,我们只需要创建一个QAction对象,并将其添加到菜单中即可。

menu.addAction("New")
menu.addAction("Open")

对于每个下拉菜单项,我们可以通过connect()方法将一个槽函数与其相关联。槽函数可以是一个普通的Python函数或类中的一个方法。

def open_file():
    # 打开文件代码
    
menu.actions()[1].triggered.connect(open_file)
完整代码
from PyQt5.QtWidgets import QMainWindow, QMenuBar, QMenu, QAction

class MyWindow(QMainWindow):
    def __init__(self):
        super().__init__()

        menu_bar = QMenuBar(self)
        self.setMenuBar(menu_bar)

        file_menu = QMenu("File", self)
        menu_bar.addMenu(file_menu)

        file_menu.addAction("New")
        file_menu.addAction("Open")

        file_menu.actions()[1].triggered.connect(self.open_file)

    def open_file(self):
        # 打开文件代码

以上就是如何使用QMenuBar在PyQt中创建菜单栏。QMenuBar是很有用的组件,可以使应用程序更加交互化、直观化。