[ Qt ] | QPushButton常见用法

目录

绑定键盘快捷键


前面已经说了很多用法了,下面主要说说绑定键盘,设置Icon图片。

绑定键盘快捷键

实现四个按钮,可以使用wsad来控制另一个按钮的上下左右的移动。

cpp 复制代码
#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

    QIcon icon(":/koumo.png");
    this->setWindowIcon(icon);

    ui->pushButton_target->setIcon(icon);
    ui->pushButton_target->setIconSize(QSize(120, 120));

    ui->pushButton_up->setShortcut(Qt::CTRL + Qt::Key_W);
    ui->pushButton_down->setShortcut(Qt::Key_S);
    ui->pushButton_left->setShortcut(Qt::Key_A);
    ui->pushButton_right->setShortcut(Qt::Key_D);
}

Widget::~Widget()
{
    delete ui;
}

void Widget::on_pushButton_up_clicked()
{
    QRect rect =  ui->pushButton_target->geometry();
    ui->pushButton_target->setGeometry(rect.x(), rect.y() - 5, rect.width(), rect.height());
}
void Widget::on_pushButton_down_clicked()
{
    QRect rect =  ui->pushButton_target->geometry();
    ui->pushButton_target->setGeometry(rect.x(), rect.y() + 5, rect.width(), rect.height());
}
void Widget::on_pushButton_left_clicked()
{
    QRect rect =  ui->pushButton_target->geometry();
    ui->pushButton_target->setGeometry(rect.x() - 5, rect.y(), rect.width(), rect.height());
}
void Widget::on_pushButton_right_clicked()
{
    QRect rect =  ui->pushButton_target->geometry();
    ui->pushButton_target->setGeometry(rect.x() + 5, rect.y(), rect.width(), rect.height());
}
相关推荐
两点王爷3 小时前
Java spingboot项目 在docker运行,需要含GDAL的JDK
java·开发语言·docker
万能螺丝刀15 小时前
java helloWord java程序运行机制 用idea创建一个java项目 标识符 关键字 数据类型 字节
java·开发语言·intellij-idea
朱剑君6 小时前
编程之巅:语言的较量
开发语言
Humbunklung6 小时前
Rust 编程实现猜数字游戏
开发语言·后端·rust
vvilkim6 小时前
深入理解C#数据类型:从基础到高级应用
开发语言·c#
真实的菜7 小时前
(22)大文件流式处理
java·开发语言
fpcc7 小时前
跟我学c++中级篇——动态库的资源处理
开发语言·c++
夜晚回家7 小时前
「Java教案」Java程序的构成
java·开发语言
泽02027 小时前
C++之string的模拟实现
开发语言·数据结构·c++·算法
门前云梦7 小时前
《java创世手记》---java基础篇(下)
开发语言·java学习