QShortcut实现快捷键

在 Qt 中实现快捷键功能通常涉及到 QShortcut 类的使用。

cpp 复制代码
QShortcut *shortcutOpen = new QShortcut(QKeySequence(tr("Ctrl+O")),this);
QShortcut *shortcutSave = new QShortcut(QKeySequence(tr("Ctrl+S")),this);

connect(shortcutOpen, &QShortcut::activated, [=]() {
on_btnopen_clicked();//调用打开文件的槽函数
});

connect(shortcutSave, &QShortcut::activated, [=]() {
on_btnsave_clicked();//调用保持文件的槽函数
})

快捷键实现字体的放大/缩小

cpp 复制代码
    QShortcut *shortcutEnlarge = new QShortcut(QKeySequence(tr("Ctrl+=")),this);//在键盘上加号和等号共有一个键
    connect(shortcutEnlarge, &QShortcut::activated, [=]() {
    //获取TextEdit当前字体信息
    QFont font = ui->textEdit->font();
    //获取当前字体大小
    int fontSize = font.pointSize();
    if(fontSize == -1) return ;
    //改变字体大小,并设置字体大小
    fontSize = fontSize+1;
    font.setPointSize(fontSize);
    ui->textEdit->setFont(font);
    });
    QShortcut *shortcutReduce = new QShortcut(QKeySequence(tr("Ctrl+-")),this);
    connect(shortcutReduce, &QShortcut::activated, [=]() {
    //获取TextEdit当前字体信息
    QFont font = ui->textEdit->font();
    //获取当前字体大小
    int fontSize = font.pointSize();
    if(fontSize == -1) return ;
    //改变字体大小,并设置字体大小
    fontSize = fontSize-1;
    font.setPointSize(fontSize);
    ui->textEdit->setFont(font);
    });
相关推荐
Mike117.2 小时前
GBase 8a 日期边界写法和时间窗口取数偏差
数据库
SPC的存折4 小时前
1、Redis数据库基础
linux·运维·服务器·数据库·redis·缓存
爱学习的小囧5 小时前
VMware ESXi 6.7U3v 新版特性、驱动集成教程和资源包、部署教程及高频问答详情
运维·服务器·虚拟化·esxi6.7·esxi蟹卡驱动
小疙瘩5 小时前
只是记录自己发布若依分离系统到linux过程中遇到的问题
linux·运维·服务器
dldw7775 小时前
IE无法正常登录windows2000server的FTP服务器
运维·服务器·网络
运维有小邓@6 小时前
什么是重放攻击?如何避免成为受害者?
运维·网络·安全
我是伪码农6 小时前
外卖餐具智能推荐
linux·服务器·前端
汤愈韬7 小时前
下一代防火墙通用原理
运维·服务器·网络·security
IMPYLH7 小时前
Linux 的 od 命令
linux·运维·服务器·bash
MatrixOrigin7 小时前
数据库没有死,只是范式变了
数据库·oracle