我已经使用在这个 SO 问题上找到的 RunGuard 代码将我的应用程序变成了单实例应用程序:
Qt: Best practice for a single instance app protection
我想做的是,当用户尝试启动正在运行的应用程序时,将现有正在运行的应用程序置于最前面,如果已最小化,则将其恢复。
在我使用 Delphi Windows 编程的日子里,我常常在关闭新应用程序之前从它广播一条 Windows 消息。现有的应用程序会收到此信息并自行恢复并走到最前面。
Windows 和 Linux 平台上的 Qt 是否可以实现类似的功能?
最佳答案
您在使用 QtSingleApplication 时遇到过任何具体问题吗?它应该足以满足您的需求,并使您能够向正在运行的应用程序发送消息。您只需要一个插槽来获取该消息,如果它符合您的预期,那么您就可以恢复它。
http://doc.qt.digia.com/solutions/4/qtsingleapplication/qtsingleapplication-example-trivial.html
The logview object is also set as the application's activation window. Every time a message is received, the window will be raised and activated automatically.
关于c++ - 恢复或将 Qt 桌面应用程序置于最前面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30210827/