QT中已知两点坐标,怎么画一条直线连接他们
时间: 2024-10-03 13:02:21 浏览: 34
C++已知圆弧两点坐标和半径计算圆心坐标(VS+Qt工程)
在Qt中,如果你已经有了两个点的坐标,例如`(x1, y1)`和`(x2, y2)`,你可以使用`QPainter`类来在窗口上画出一条直线。以下是一个简单的步骤:
首先,你需要创建一个`QPainter`对象并将其绑定到你要绘画的`QWidget`或`QGraphicsView`上:
```cpp
QPainter painter(widget); // widget是你的主窗口或其他需要绘画的对象
```
然后,调用`beginPath()`开始一个新的路径,接着添加直线:
```cpp
painter.beginPath();
painter.moveTo(x1, y1); // 添加起点
painter.lineTo(x2, y2); // 添加终点,会自动绘制从起点到终点的一条线
```
最后,使用`drawLine()`或者`drawPath()`来实际绘制这条线:
```cpp
painter.drawLine(x1, y1, x2, y2); // 或者直接 paintPath(painter.path());
```
记得在绘制完毕后调用`endPath()`关闭路径,并使用`update()`或`render()`更新窗口显示:
```cpp
painter.endPath();
widget.update(); // 或者 use painter.device()->render();
```
阅读全文