QT实现软件重启

//重启软件 void MainWindow::on_pushButton_UI_reboot_clicked()

{ //方式1 需要主函数中事件循环判断 //qApp->exit(773); //重启代码,773 = ‘r‘+‘e‘+‘s‘+‘t‘+‘a‘+‘r‘+‘t‘ ==>restart

//方式2 直接重启 #ifdef Q_OS_WIN qApp->closeAllWindows();

QProcess::startDetached(qApp->applicationFilePath(), QStringList()); exit(0);

#elif defined (Q_OS_LINUX) qApp->closeAllWindows();

QProcess::startDetached(qApp->applicationFilePath(), QStringList("-qws"));

QProcess::execute("-qws"); //经测试linux下需要这样,软件才能运行 #endif }

时间: 2024-10-08 06:54:55

QT实现软件重启的相关文章

用Qt写软件系列五:一个安全防护软件的制作(1)

引言 又有许久没有更新了.Qt,我心爱的Qt,为了找工作不得不抛弃一段时间,业余时间来学一学了.本来计划要写一系列关于Qt组件美化的博文,但是写了几篇之后就没坚持下去了.技术上倒是问题不大,主要是时间不够充裕.这段时间写几篇关于界面整体设计的博文,从最基础的界面元素开始,到最后构建一个页面元素丰富的桌面应用程序.Trojan Assessment Platform是一个原型设计项目,只是实现了有限的一部分功能.远远还称不上是一个评估平台.这里仅仅侧重于用Qt做界面的实现. 界面预览 首先还是看看

Qt课程表软件

闲来无事,为了巩固自己对qt的掌握程度,就突发奇想做了一个课程表软件. 此软件扩展性能良好,本人在以后会添加一些更加实用和具体的功能. 这个软件是连接数据库的.所以,当需要更新课程时,不用修改程序,只需换数据库就可以. 进入正题: 1.下面为启动画面,为了突出课程表主题,特意为程序启动加了一个屏风,当然,这个模块很好的就实现喽,本课程表为江西师大科学技术学院 12级中文1班2015年春期课程表为例:(置于为什么选这个,暂时保密.) 2.线面界面为启动后的界面.鼠标右键单击课程表,可以弹出菜单关于

Qt 5 软件发布===》插件路径

方法有三种, 方法有三种, qt.conf 2. 放在可执行程序目录下 3. 设置系统变量QT_PLUGIN_PATH ,这里使用的是nsis打包工具,可参考"软件打包NSIS的使用,以及修改环境变量" QT_PLUGIN_PATH : E:\share\projects\src\bin\plugins :这里是我的路径,使用时要改成实际的插件路径 以下是NSIS脚本示例代码: ; Script generated by the HM NIS Edit Script Wizard.  

[QT]制作软件级屏保

欢迎访问cuzn小站 之前接手的项目中有一个关于屏保的需求是,如果超过30s未进行操作,软件自动进入屏保状态.简单分析一下:所谓未进行操作即是指未接收到键盘或者鼠标事件,超过30s也就是需要用到定时器,屏保状态就是显示一张全屏大图.从QT的角度思考,我们需要创建一个屏保类并且将其做为应用程序的一个事件代理,如果其中有鼠标或者键盘事件,则重新刷新定时器,如果超过30s没有接收到相关事件则全屏显示屏保窗口.以下就着代码实例讲解一下. 构造一个屏保类CScreenSaver: cscreensaver

Qt应用程序重启

重启应用程序是一种常见的操作,在Qt中实现非常简单,需要用到QProcess类一个静态方法: 1 // program, 要启动的程序名称 2 // arguments, 启动参数 3 bool startDetached(const QString &program, const QStringList &arguments); 下面通过一个示例来演示: [创建一个窗口] 接下来实现点击[Restart]按钮实现程序重启的功能. 1 // dialog.h 2 #ifndef DIALO

Qt实现软件自动更新的一种简单方法

前言 最近在学习Qt开发上位机,想实现一个检查更新的功能,网上搜索了一大圈,发现实现过程都很复杂,关键是代码看不懂,所以就自己开发一种简单的方式来实现.实现效果如下: 点击"检查更新"按钮,如果当前版本低于远程的版本,那么会弹出如下窗口,提示更新,并显示远程的的版本号,更新时间,更新说明,如下图所示: 如果点击"去下载",那么会调用系统默认浏览器,直接创建下载任务.点击"不更新",则取消更新. 如果当前版本号和远程一致,那么会提示"已经

Qt之软件打包

新建文件:gen.bat,写入: set PATH=C:/Qt/Qt5.5.1/5.5/mingw492_32/bin;C:/Qt/Qt5.5.1/Tools/mingw492_32/bin;%PATH%windeployqt.exe your.exe 执行gen.bat脚本即可.

用Qt写软件系列六:博客园客户端的设计与实现(用Fiddler抓包,用CURL提交数据,用htmlcxx解析HTML)

引言 博客园是本人每日必逛的一个IT社区.尽管博文以.net技术居多,但是相对于CSDN这种业务杂乱.体系庞大的平台,博客园的纯粹更得我青睐.之前在园子里也见过不少讲解为博客园编写客户端的博文.不过似乎都是移动端的技术为主.这篇博文开始讲讲如何在PC端编写一个博客园客户端程序.一方面是因为本人对于博客园的感情:另一方面也想用Qt写点什么东西出来.毕竟在实践中学习收效更快. 登录过程分析 登录功能是一个客户端程序比不可少的功能.在组装Http数据包发送请求之前,我们得看看整个登录是怎样一个过程.F

QT 做软件盘

最近搞了一个组织细胞脱水机项目,当然,对于国内的项目都是仿来仿去的,我们也不例外,开启被仿机器后,第一个看到的界面就是用户登录界面,需要输入中文,作为一个程序员,我的第一反应就是我需要采用什么用的框架来做这个界面,方向是多方面的,肯定会选择自己熟悉的一个,自然而然,我选择了QT来做界面,但是QT并没有像安卓,iOS,C#等支持得那么完美,毕竟做的人不是那么多,所以相对不是那么完美.我们没有鼠标键盘这样的外设,所有的用户交互都是通过触摸显示屏.这里碰到的第一个问题就是:QT软键盘制作.下面进入正题