qt 单击左键画一个小圆圈
时间: 2023-07-13 19:15:13 浏览: 103
实现这个功能需要以下步骤:
1. 创建一个自定义的 QWidget 类,重写它的 mousePressEvent() 函数。
2. 在 mousePressEvent() 函数中获取鼠标点击的位置,并使用 QPainter 绘制一个小圆圈。
下面是实现的代码示例:
```
#include <QtGui>
class MyWidget : public QWidget
{
public:
MyWidget(QWidget *parent = 0) : QWidget(parent) {}
protected:
void mousePressEvent(QMouseEvent *event)
{
if (event->button() == Qt::LeftButton)
{
// 获取鼠标点击的位置
QPoint pos = event->pos();
// 在窗口上绘制一个小圆圈
QPainter painter(this);
painter.setBrush(Qt::black);
painter.drawEllipse(pos, 5, 5);
}
}
};
```
在主函数中创建窗口,并显示它:
```
#include <QtGui>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
MyWidget widget;
widget.show();
return app.exec();
}
```
阅读全文