#include <QApplication>
#include <QWidget>
#include <QMouseEvent>
#include <QDebug>
class CustomWidget : public QWidget {
public:
CustomWidget(QWidget *parent = nullptr) : QWidget(parent) {}
protected:
void mousePressEvent(QMouseEvent *event) override {
if (event->type() == QEvent::MouseButtonPress) {
// 获取鼠标按下事件对象的坐标
QMouseEvent *mouseEvent = static_cast<QMouseEvent*>(event);
int x = mouseEvent->x();
int y = mouseEvent->y();
qDebug() << "Mouse button pressed at (" << x << ", " << y << ")";
}
}
};
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
CustomWidget widget;
widget.setWindowTitle("Event Object Example");
widget.setGeometry(100, 100, 300, 200);
widget.show();
return app.exec();
}
没有合适的资源?快使用搜索试试~ 我知道了~
Qt事件对象(QEvent)Demo
共3个文件
user:1个
pro:1个
cpp:1个
0 下载量 27 浏览量
2023-10-14
11:19:22
上传
评论
收藏 4KB ZIP 举报
温馨提示
在Qt中,事件对象是`QEvent`或其子类的实例,用于封装事件的信息。不同的事件类型对应着`QEvent`的不同子类。你可以使用这些事件对象的方法和属性来获取事件的相关信息,例如鼠标坐标、键盘按键等。 **使用说明:** 1. **获取事件类型:** 通过`event->type()`可以获取事件对象的类型。 2. **类型转换(如果需要):** 如果你知道事件是某个特定类型的事件,可以使用`static_cast`或`dynamic_cast`将`QEvent`对象转换为相应的事件子类,以便获取更多的事件信息。 3. **获取事件属性:** 事件对象的子类通常有特定的方法或属性,用于获取事件的相关信息,例如鼠标位置、键盘按键等。
资源推荐
资源详情
资源评论
收起资源包目录
9_5.zip (3个子文件)
9_5
9_5.pro.user 23KB
main.cpp 855B
9_5.pro 1KB
共 3 条
- 1
资源评论
三雷科技
- 粉丝: 3w+
- 资源: 100
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功