Qt5注册全局热键实现对话框显示与隐藏

33 篇文章 1 订阅
Qt5注册全局热键

简述

最近写Qt程序需要用到注册全局热键,百度了好多,也没有找到成功的(可能我用的是假百度吧),几天后,找到一个案例,终于成功。本文全部是基于这个例程进行编写的。正所谓,站在巨人的肩上! 
尽量写的详细一点,使新手学习过程中少走弯路。文章最后会有项目全部代码,仅供参考。

相关环境

Qt 5.6 
Windows 8.1

没有在linux系统运行,我只针对windows做了测试。

实例

新建一个窗口程序

这里写图片描述
项目命名 
这里写图片描述
一直点击下一步完成后,项目的目录结构如下 
这里写图片描述

添加相关文件

在项目中添加响应热键所需的文件,点击此处下载文件 
将文件复制到项目目录下,如图 
这里写图片描述 
在项目上面右键,选择添加现有文件 
这里写图片描述 
在弹出窗口选择刚才的文件,记得全部选中 
这里写图片描述 
点击打开后,项目的文件结构已经发生了变化 
这里写图片描述

代码编辑

在main.cpp文件添加有文件

#include<MyGlobalShortCut/MyGlobalShortCut.h>
  • 1

然后在main函数中添加热键注册和绑定的代码

MyGlobalShortCut *shortcut = new MyGlobalShortCut("Ctrl+F10",&w);
    QObject::connect(shortcut,SIGNAL(activated()),&w,SLOT(showHide()));
  • 1
  • 2

main.cpp修改截图如下 
这里写图片描述

showHide()是Dialog里面的一个slot,这个是需要我们进行自定义的,打开Dialog.h添加声明。函数名任意。

public slots:
    void showHide();
  • 1
  • 2

Dialog.cpp文件中定义showHide()函数,此函数内完成响应热键的事件。本例中简单的写个弹出提示框。

void Dialog::showHide()
{
    if(isShow)
        hide();
    else
        show();

    isShow=!isShow;
}

运行测试

运行之后,按Ctrl+F10可以隐藏对话框,再按Ctrl+F10可以显示对话框。

具体代码:https://download.csdn.net/download/komtao520/10417391

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值