当前位置: 首页 > news >正文

荷兰网站开发价格/百度知道网页版地址

荷兰网站开发价格,百度知道网页版地址,中国建设银行员工学习网站,织梦做的网站总是被攻击2019独角兽企业重金招聘Python工程师标准>>> 前面一节我们已经把QAction添加到菜单和工具条上面。现在我们要添加一些图片美化一下,然后把信号槽加上,这样,我们的action就可以相应啦! 首先来添加图标。QAction的图标会…

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

前面一节我们已经把QAction添加到菜单和工具条上面。现在我们要添加一些图片美化一下,然后把信号槽加上,这样,我们的action就可以相应啦!
首先来添加图标。QAction的图标会显示在菜单项的前面以及工具条按钮上面显示。
为了添加图标,我们首先要使用Qt的资源文件。在QtCreator的项目上右击,选择New File...,然后选择resource file。
然后点击next,选择好位置,Finish即可。为了使用方便,我就把这个文件建在根目录下,建议应该在仔细规划好文件之后,建在专门的 rsources文件夹下。完成之后,生成的是一个.qrc文件,qrc其实是Qt Recource Collection的缩写。它只是一个普通的XML文件,可以用记事本等打开。不过,这里我们不去深究它的结构,完全利用QtCreator操作这个文 件,
点击Add按钮,首先选择Add prefix,然后把生成的/new/prefix改成/。这是prefix就是以后使用图标时需要提供的前缀,以/开头。添加过prefix之后,然后 在工程文件中添加一个图标,再选择Add file,选择那个图标。这样完成之后保存qrc文件即可。
说明一下,QToolBar的图标大小默认是32*32,菜单默认是16*16。如果提供的图标小于要求的尺寸,则不做操作,Qt不会为你放大图片;反之,如果提供的图标文件大于相应的尺寸要求,比如是64*64,Qt会自动缩小尺寸。
图片的路径怎么看呢?可以看出,Qt的资源文件视图使用树状结构,根是/,叶子节点就是图片位置,连接在一起就是路径。比如这张图片的路径就是/Open.png。
注意,为了简单起见,我们没有把图标放在专门的文件夹中。正式的项目中应该单独有一个resources文件夹放资源文件的。
然后回到前面的mainwindow.cpp,在构造函数中修改代码:
27152700_24hU.gifopenAction = new QAction(tr( "&Open"), this);
27152700_24hU.gifopenAction->setShortcut(QKeySequence::Open);
27152700_24hU.gifopenAction->setStatusTip(tr( "Open a file."));
27152700_24hU.gifopenAction->setIcon(QIcon( ":/Open.png")); // Add code.
我们使用setIcon添加图标。添加的类是QIcon,构造函数需要一个参数,是一个字符串。由于我们要使用qrc中定义的图片,所以字符串 以 : 开始,后面跟着prefix,因为我们先前定义的prefix是/,所以就需要一个/,然后后面是file的路径。这是在前面的qrc中定义的,打开 qrc看看那张图片的路径即可。
好了,图片添加完成,然后点击运行,看看效果吧!
瞧!我们只需要修改QAction,菜单和工具条就已经为我们做好了相应的处理,还是很方便的!
下一步,为QAction添加事件响应。还记得Qt的事件响应机制是基于信号槽吗?点击QAction会发出triggered()信号,所以,我们要做的是声名一个slot,然后connect这个信号。
mainwindow.h
27152700_24hU.gifclass MainWindow : public QMainWindow
27152700_24hU.gif{
27152700_24hU.gif        Q_OBJECT
27152700_24hU.gif
27152700_24hU.gifpublic:
27152700_24hU.gif        MainWindow(QWidget *parent = 0);
27152700_24hU.gif        ~MainWindow();
27152700_24hU.gif
27152700_24hU.gifprivate slots:
27152700_24hU.gif         void open();        
27152700_24hU.gif
27152700_24hU.gifprivate:
27152700_24hU.gif        QAction *openAction;
27152700_24hU.gif};
因为我们的open()目前只要在类的内部使用,因此定义成private slots即可。然后修改cpp文件:
27152700_24hU.gifMainWindow::MainWindow(QWidget *parent)
27152700_24hU.gif        : QMainWindow(parent)
27152700_24hU.gif{
27152700_24hU.gif        openAction = new QAction(tr( "&Open"), this);
27152700_24hU.gif        openAction->setShortcut(QKeySequence::Open);
27152700_24hU.gif        openAction->setStatusTip(tr( "Open a file."));
27152700_24hU.gif        openAction->setIcon(QIcon( ":/Open.png"));
27152700_24hU.gif        connect(openAction, SIGNAL(triggered()), this, SLOT(open()));
27152700_24hU.gif
27152700_24hU.gif        QMenu *file = menuBar()->addMenu(tr( "&File"));
27152700_24hU.gif        file->addAction(openAction);
27152700_24hU.gif
27152700_24hU.gif        QToolBar *toolBar = addToolBar(tr( "&File"));
27152700_24hU.gif        toolBar->addAction(openAction);
27152700_24hU.gif}
27152700_24hU.gif
27152700_24hU.gifvoid MainWindow::open()
27152700_24hU.gif{
27152700_24hU.gif        QMessageBox::information(NULL, tr( "Open"), tr( "Open a file"));
27152700_24hU.gif}
注意,我们在open()函数中简单的弹出一个标准对话框,并没有其他的操作。编译后运行,看看效果:
好了,关于QAction的动作也已经添加完毕了!
至此,QAction有关的问题先告一段落。最后说一下,如果你还不知道怎么添加子菜单的话,看一下QMenu的API,里面会有一个addMenu函数。也就是说,创建一个QMenu然后添加就可以的啦!

本文出自 “豆子空间” 博客,请务必保留此出处http://devbean.blog.51cto.com/448512/205958

转载于:https://my.oschina.net/iamhere/blog/420596

http://www.jmfq.cn/news/4762711.html

相关文章:

  • 网站建设 商业价值/同城发广告的平台有哪些
  • 义务网网站建设方案/昨日凌晨北京突然宣布重大消息
  • 动静分离网站架构/seo如何优化排名
  • 企业网站建设公司 宣武/武汉seo网站排名
  • 环保企业的网站怎么做/营销管理
  • wordpress自动删除p标签/安卓系统优化软件
  • 手机网站这么做链接/徐州seo推广
  • 南宁外贸网站建设/jsurl转码
  • 有经验的做网站/网络游戏推广平台
  • seo排名软件价格/网站seo关键词设置
  • 简洁的网站/企业培训师资格证报考2022
  • 建筑网格组织/优化网站首页
  • 西宁公司官方网站建设/广告联盟接单平台
  • 男人和女人做受吃母乳视频网站免费/谷歌海外广告投放推广
  • 网站后台密码错误/2021网络营销成功案例
  • 怎么做58同城网站教程/win7优化教程
  • 罗定市政府公众网建设局网站/百度的链接
  • ps做网站心得/拼多多代运营公司十大排名
  • 网站建设及相关流程图/重庆关键词快速排名
  • 保定集团网站建设/南宁优化网站网络服务
  • 网络营销策略论文/兰州seo优化
  • 携程旅行网站建设分析/拉新推广渠道
  • web个人网站模板/百度号码认证平台个人号码申诉
  • 笔杆子写作网站/淘宝店铺转让价格表
  • 新建网站二级网页怎么做/烟台seo网络推广
  • wordpress登陆后段后端/百度seo是啥
  • 做网站失败/seo外链工具软件
  • 做翻页电子书的网站/百度软件下载中心官方网站
  • ui培训学校哪家好/襄阳seo优化排名
  • phpcms 怎么做视频网站/建立网站