QMenuBar *mBar = menuBar()
2、添加菜单
QMenu * menu = mBar->addMenu("文件")
3、添加菜单项
QAction * action = menu->addAction("新建")
4、给QAction创建点击事件
connect(action ,&QAction::triggered ,this ,[=](){
//里面写点击后执行的函数就行
})
5、设置QAction不可用
主窗口MainWindow需要菜单栏QMenuBar及菜单QMenu来组成自身,一般应用程序的所有功能都能在菜单中找到。
它添加了很多动作QAction,并用自身组成了菜单栏QMenuBar上的菜单,当然也可用于基它地方,如上下文菜单等。
公有函数如下:
aboutToHide:此信号在菜单对用户隐藏之前发出。
aboutToShow:此信号在菜单显示给用户之前发出。
hovered:此信号在菜单动作突出显示时发出;该动作是导致信号发出的动作。通常用于更新状态信息。
triggered:此信号在触发此菜单中的 *** 作时发出。该动作是导致信号发出的动作。
通常,每个菜单动作的已触发信号连接到其自己的自定义槽,但有时您会希望将多个动作连接到单个槽,例如,当您有一组密切相关的动作时,例如“左对齐”、“中对齐”、“右对齐”。
注意:此信号是为层次结构中的主父菜单发出的。因此,只需要将父菜单连接到插槽;不需要连接子菜单。
静态成员函数,可用它将一些actions组合成一个菜单
它是主窗口存放菜单的地方。
在windows上可认为它就是那个大理石颜色的一栏
函数如下:
简单测试示例如下:
1.新建Qt4 Gui Application工程,将工程命名为MainWindow,其他选项默认即可。生成的窗口界面如下图。其中最上面的为菜单栏。
2.我们在Type Here那里双击,并输入“文件(&F)”,这样便可将其文件菜单的快捷键设为Alt+F。(注意括号最好用英文半角输入,这样看着美观)
3.输入完按下Enter键确认即可,然后在子菜单中加入“新建(&N)”,确定后,效果如下图。
4.我们在下面的动作编辑窗口可以看到新加的“新建”菜单。
5.双击这一条,可打开它的编辑对话框。我们看到Icon项,这里可以更改“新建”菜单的图标。
6.我们点击后面的...号,进入资源选择器,但现在这里面是空的。所以下面我们需要给该工程添加外部资源。
7.添加资源有两种方法。一种是直接添加系统提供的资源文件,然后选择所需图标。另一种是自己写资源文件。我们主要介绍第一种。新建Qt Resources file,将它命名为menu。其他默认。
8.添加完后如下图。可以看到添加的文件为menu.qrc。
9.我们最好先在工程文件夹里新建一个文件夹,如images,然后将需要的图标文件放到其中。
10.在Qt Creator的menu.qrc文件中,我们点击Add下拉框,选择Add Prefix。我们可以将生成的/new/prefix前缀改为其他名字,如/File。
11.然后再选择Add下拉框,选择Add Files。再d出的对话框中,我们到新建的images文件夹下,将里面的图标文件全部添加过来。
12.添加完成后,我们在Qt Creator的File菜单里选择Save All选项,保存所做的更改。
13.这时再打开资源选择器,可以看到我们的图标都在这里了。(注意:如果不显示,可以按一下上面的Reload按钮)
14.我们将new.png作为“新建”菜单的图标,然后点击Shortcut,并按下Crtl+N,便能将Crtl+N作为“新建”菜单的快捷键。
15.这时打开文件菜单,可以看到“新建”菜单已经有图标了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)