Qt单一实例进程——使用qtsingleapplication

用Qt发布的应用,每双击一次,都会打开一个软件,这可能会导致一些不良影响,比如:临界资源的访问。

所以,我们希望无论双击多少次这个应用,都只会打开一个软件。

这就需要使用qtsingleapplication。

用法很简单,只要把src的代码添加到工程就可以使用了。

但是qtsingleapplication默认使用Widget。

对于Widget的应用,可以直接支持。

对于使用QGuiApplication的Qml应用是不能直接支持的。所以,需要修改qtsingleapplication的源代码。

如下图所示。

在qtsingleapplication.h文件中,注释掉widget相关的代码,并添加QGuiApplication头文件。



在qtsingleapplication.cpp,要注释掉上图对应的类、信号、槽。再把QtSingleApplication类改为继承QGuiApplication类。这里不一一截图。

最后在main.cpp中,使用QtSingleApplication,如下图所示。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值