【笔记1-2】Qt系列:QkeyEvent 键盘事件 设定快捷键

参考文献

  • QKeyEvent 类用来描述一个键盘事件。当键盘按键被按下或者被释放时,键盘事件便会被发送给拥有键盘输人焦点的部件。
  • QKeyEvent 的 key() 函数可以获取具体的按键关键字。需要特别说明的是,回车键在这里是 Qt::Key_Return;键盘上的一些修饰键,比如 Ctrl 和 Shift 等,这里需要使用 QKeyEvent 的 modifiers() 函数来获取

首先添加头文件

c 复制代码
 #include <QKeyEvent>

在mainwindow.h中声明两个成员函数

c 复制代码
private:
    Ui::MainWindow *ui;
    void keyPressEvent(QKeyEvent *event); 
    void keyReleaseEvent(QKeyEvent *event);

在mainwindow.c中实现两个成员函数

c 复制代码
void MainWindow::keyPressEvent(QKeyEvent *keyEvent)
{
    //ctrl+2
    if(keyEvent->modifiers() == Qt::ControlModifier) {
        if(keyEvent->key() == Qt::Key_2){
            ui->lineEdit->setText("2222");
        }
    }
    //ctrl+alt+3
    if (keyEvent->modifiers() == (Qt::AltModifier | Qt::ControlModifier) && keyEvent->key() == Qt::Key_3) {
        ui->lineEdit->setText("3333");
    }

}

void MainWindow::keyReleaseEvent(QKeyEvent *keyEvent)
{
    //
        if(keyEvent->key() == Qt::Key_5){
            ui->lineEdit->setText("5555");
        }
}
复制代码
相关推荐
菜鸟看点21 分钟前
QFutureWatcher 收不到 finished 信号-QFutureWatcher 与对象生命周期
qt
鬼魅-95273 小时前
VS+Qt中使用QCustomPlot绘制曲线标签(附源码)
c++·qt
奇树谦6 小时前
Qt|槽函数耗时操作阻塞主界面问题
开发语言·qt
苕皮蓝牙土豆10 小时前
Qt 分裂布局:QSplitter 使用指南
开发语言·qt
m0_7202450118 小时前
QT(四)基本组件
数据库·qt·microsoft
IOT-Power19 小时前
Qt项目中使用 FieldManager 实现多进程间的字段数据管理
开发语言·qt·命令模式
小徐不徐说1 天前
深入理解 Qt 信号与槽机制的底层逻辑
数据库·c++·qt·面试
大梦谁先行1 天前
Qt写游戏脚本/辅助(仅供参考)
c++·qt·游戏
一只小小汤圆1 天前
qt 心跳包
服务器·数据库·qt
神仙别闹2 天前
基于QT(C++)实现(图形界面)选课管理系统
java·c++·qt