【笔记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");
        }
}
复制代码
相关推荐
范特西.i1 天前
QT聊天项目(8)
开发语言·qt
枫叶丹41 天前
【Qt开发】Qt界面优化(七)-> Qt样式表(QSS) 样式属性
c语言·开发语言·c++·qt
十五年专注C++开发1 天前
Qt deleteLater作用及源码分析
开发语言·c++·qt·qobject
kangzerun1 天前
SQLiteManager:一个优雅的Qt SQLite数据库操作类
数据库·qt·sqlite
金刚狼881 天前
qt和qt creator的下载安装
开发语言·qt
追烽少年x1 天前
Qt中使用Zint库显示二维码
qt
谁刺我心1 天前
qt源码、qt在线安装器镜像下载
开发语言·qt
金刚狼882 天前
在qt creator中创建helloworld程序并构建
开发语言·qt
扶尔魔ocy2 天前
【转载】QT使用linuxdeployqt打包
开发语言·qt
YxVoyager2 天前
在VS2017中使用Qt的foreach宏,IntelliSense无法正确识别函数定义
c++·qt