qt6.2.4 鼠标点击一次 画一个圆圈,
时间: 2024-02-17 08:03:45 浏览: 101
Qt模拟鼠标点击
3星 · 编辑精心推荐
你可以使用Qt的绘图框架QPainter来实现这个功能。具体步骤如下:
1. 在你的QWidget的子类中重载mousePressEvent函数,获取鼠标点击的位置点。
2. 在你的QWidget的子类中重载paintEvent函数,使用QPainter在画布上绘制一个圆圈。
下面是一个简单的示例代码:
```cpp
#include <QPainter>
#include <QWidget>
#include <QMouseEvent>
class MyWidget : public QWidget
{
public:
MyWidget(QWidget *parent = nullptr) : QWidget(parent) {}
protected:
void mousePressEvent(QMouseEvent *event) override
{
if (event->button() == Qt::LeftButton) {
m_center = event->pos();
update(); // 重绘窗口
}
}
void paintEvent(QPaintEvent *event) override
{
QPainter painter(this);
painter.setPen(Qt::black);
painter.setBrush(Qt::yellow);
painter.drawEllipse(m_center, 50, 50); // 绘制圆圈
}
private:
QPoint m_center;
};
```
在这个示例中,当我们点击窗口左键时,会获取鼠标点击的位置点m_center,并调用update()函数来重绘窗口。在paintEvent函数中,我们使用QPainter来绘制一个半径为50的黄色圆圈。
阅读全文