菜单控件QMenu
QMenu 是Qt库中用于创建弹出式菜单的类,它通常出现在应用程序的顶部菜单栏、按钮的右键菜单或自定义上下文菜单中。QMenu 类提供了一系列方法来添加菜单项、子菜单以及关联槽函数,以便在用户选择菜单项时执行相应的动作。
常用函数如下:
构造函数:
QMenu(const QString &title, QWidget *parent = nullptr); 创建带有标题的菜单,父窗口用于确定菜单所在的上下文。
QMenu(QWidget *parent = nullptr)
添加菜单项:
addAction(QAction *);//添加一个 QAction 对象到菜单中。
addMenu(QMenu *);//添加一个子菜单到当前菜单。
addSeparator();//在菜单中添加一个分隔线,用于区分不同的菜单项组。
事件处理:
通过关联槽函数到 triggered(QAction *) 信号,可以在用户选择菜单项时执行相应操作。
显示菜单:
-
使用 exec(QPoint globalPos) 弹出菜单并等待用户选择一个项,然后返回被选中项的 QAction 对象指针。
-
使用 popup(QPoint pos) 直接在指定的位置弹出菜单,不阻塞程序执行。