首页 > 其他分享 >如何不在main函数中访问Qapplication

如何不在main函数中访问Qapplication

时间:2022-12-18 20:44:56浏览次数:33  
标签:quit qt button Qapplication 访问 main SIGNAL

在学习qt的过程中,我们会慢慢的将主要代码在main函数外开发,这时可能会遇见不知道如何访问Qapplication的情况。比如,我们创建了MyWidget类,并在其中添加了一个按钮,我们希望按下这个按钮时,能退出这个程序。假设Qapplication我们叫a。以下代码是不行的:

extrern Qapplication a;
......
QPushButton* quit_button;
Qobject::connect(quit_button,SIGNAL(clicked()),&a,SLOT(quit()));

你会发现,编译器不能找到a。这是正常的,qt不允许这么做,qt为了这种操作提供了Qapplication的别名,既qApp。

将上述connec代码改为如下

Qobject::connect(quit_button,SIGNAL(clicked()),qApp,SLOT(quit()));

程序就可以正常通过编译了。

标签:quit,qt,button,Qapplication,访问,main,SIGNAL
From: https://www.cnblogs.com/bvwvd/p/16990889.html

相关文章

  • GuiLite 学习笔记(一) Mainloop与ViewTree
    以GuiLiteSamples中的HelloSlide为例,剖析一下GuiLite的设计思路和刷新机制;首先是main.cpp;可以分成3部分:1、根据fbmode拿到对应的phy_fb,后续的绘制都在这个fb上执行......
  • hive初始化报错Exception in thread " main" java.lang.classNotFoundException: org.
    问题:hive初始化报错 解决方法:https://blog.csdn.net/weixin_51946865/article/details/128020686?spm=1001.2014.3001.5502原因:在我的hadoop配置文件hadoop-env.sh(......
  • 折腾系列:利用好光猫,实现IPv6外网访问内网网站
    一、场景最近刚好免费的宽带到期了,中国移动提供了优惠,可以以优惠价升级光纤1000M。很好,家里的网络体验感有所提升。刚好最近以白菜价买了华为云的服务器,也搭建了自己的个人......
  • .NET Core应用如何通过SSL访问MongoDB?
    大家好,我是Edison。最近有一个ASP.NETCore通过SSL证书访问MongoDB的需求,但是在网上发现资料很少,于是调查了一番,做了如下的笔记,希望对你有用。背景在实际场景中,开发环境......
  • 解决k8s中service暴露的端口使用公网ip无法访问
    背景在华为云服务器上使用kk工具安装k8s+kubesphere,正常安装后无法通过公网ip+端口号的方式访问kubesphere页面(ps:华为云上的安全组已经放开)解决办法在命令行执行iptable......
  • springMVC10(放行静态资源访问)
    一、放行静态资源访问的目的:为了让静态资源不被"springMVC"访问,而被拦截。我们需要让它被"放行"二、目录结构是什么样?2.1.1-在main包下2.1.2-和java包同"级别"2......
  • mysql如何设置外网访问?
    限制授权网络访问,由系统数据库mysql表user决定,user表中的host字段内容决定;user表中的记录对应各用户的访问情况,host字段之可以为:%代表任意的主机都可以连接到mysql服务器,......
  • 使用 ContentProvider 共享数据 访问与添加通讯录
    1.统一的数据访问方式当应用继承ContentProvider类,并重写该类用于提供数据和存储数据的方法,就可以向其他应用共享其数据。文件的操作模式中,通过指定文件的操作模式为Contex......
  • docker 安装redis并配置外网访问
    docker安装redis并配置外网访问dockerpullredis拉取最新版本的redis,后面也可以加tag指定版本号dockerpullredisdocker安装redis容器(container)安装之前定......
  • 通过地址偏移访问和修改类的成员变量
    假设有如下类:classTest{public: intage{100};}有下列两种方式访问和修改age字段。方法一:通过原始的地址偏移方式Testtest;//还可以这样计算offset:......