Qt designer 添加菜单动作

来源:互联网 发布:手机淘宝店铺怎么激活 编辑:程序博客网 时间:2024/06/04 21:31



1.新建Qt4 Gui Application工程,将工程命名为MainWindow,其他选项默认即可。

生成的窗口界面如下图。其中最上面的为菜单栏。

四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客

2.我们在Type Here那里双击,并输入“文件(&F)”,这样便可将其文件菜单的快捷键设为Alt+F。(注意括号最好用英文半角输入,这样看着美观)
四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客

3.输入完按下Enter键确认即可,然后在子菜单中加入“新建(&N)”,确定后,效果如下图。
四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客

4.我们在下面的动作编辑窗口可以看到新加的“新建”菜单。
四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客

5.双击这一条,可打开它的编辑对话框。我们看到Icon项,这里可以更改“新建”菜单的图标。
四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客

6.我们点击后面的…号,进入资源选择器,但现在这里面是空的。所以下面我们需要给该工程添加外部资源。
四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客

7.添加资源有两种方法。一种是直接添加系统提供的资源文件,然后选择所需图标。另一种是自己写资源文件。我们主要介绍第一种。新建Qt Resources file,将它命名为menu。其他默认。
四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客

8.添加完后如下图。可以看到添加的文件为menu.qrc。
四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客

9.我们最好先在工程文件夹里新建一个文件夹,如images,然后将需要的图标文件放到其中。
四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客

10.在Qt Creator的menu.qrc文件中,我们点击Add下拉框,选择Add Prefix。我们可以将生成的/new/prefix前缀改为其他名字,如/File。
四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客

11.然后再选择Add下拉框,选择Add Files。再弹出的对话框中,我们到新建的images文件夹下,将里面的图标文件全部添加过来。
四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客

12.添加完成后,我们在Qt Creator的File菜单里选择Save All选项,保存所做的更改。
四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客

13.这时再打开资源选择器,可以看到我们的图标都在这里了。(注意:如果不显示,可以按一下上面的Reload按钮)
四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客

14.我们将new.png作为“新建”菜单的图标,然后点击Shortcut,并按下Crtl+N,便能将Crtl+N作为“新建”菜单的快捷键。
四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客

15.这时打开文件菜单,可以看到“新建”菜单已经有图标了。
四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客

运行程序后效果如下。
四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客

16.我们在工程文件夹下查看建立的menu.qrc文件,可以用写字板将它打开。
四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客

其具体内容如下。
四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客

附:第二种添加资源文件的方法。

1.首先右击工程文件夹,在弹出的菜单中选择Add New,添加新文件。也可以用File中的添加新文件。
四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客

2.我们选择文本文件。
四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客

3.将文件名设置为menu.qrc。
四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客

4.添加好文件后将其内容修改如下。可以看到就是用第一种方法生成的menu.qrc文件的内容。
四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客

5.保存文件后,在资源管理器中可以看到添加的图标文件。
四、Qt Creator添加菜单图标 - 菠菜仔 - 菠菜仔的博客


备注:文件提到的资源管理器,其实就是资源文件,打开资源文件时,能看到所添加的图标已经存在,表白添加成功。

 

通过以上操作后,可能看不到图标的存在,如没见到图标的出现,可以就是其隐藏起来了,解决的办法如下: