c++ - QT画圆

标签 c++ qt

<分区>

我正在学习 QT,有一个快速的问题:

绘制圆心为 x,y 的半径为 r 的圆的最佳方法是什么?

谢谢!

最佳答案

paintEvent 中使用:

http://doc.qt.io/qt-4.8/qpainter.html#drawEllipse

http://doc.qt.io/qt-4.8/qgraphicsscene.html#addEllipse

QGraphicsView/QGraphicsScene 中使用:

http://doc.qt.io/qt-4.8/qgraphicsellipseitem.html

http://doc.qt.io/qt-4.8/qpainter.html#drawEllipse

列出的最后一个链接是一个重载方法,允许您使用指定的两个半径输入中心点。

void QPainter::drawEllipse (const QPointF & center, qreal rx, qreal ry)

所以你的代码看起来像这样:

// inside MyWidget::paintEvent()
painter.drawEllipse(QPointF(x,y), radius, radius);

希望对您有所帮助。

关于c++ - QT画圆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17375808/

相关文章:

C++ 静态全局非 POD : theory and practice

c++ - 宾果游戏板 : Generating unique values

c++ - 什么是 void(*)(void *)

c++ - 有没有办法将 QVariant 与 QVector 一起使用?

c++ - Qt5 - glTexStorage2D/glBindImageTexture 未定义?

c++ - 在 QTreeview 中使用 QCombobox 委托(delegate)项

c++ - boost asio io_service 多线程性能不佳

c++ - setlocale 函数有什么作用?

qt - 更改后构建时如何告诉QT creator解析.pro文件?

qt - 从 C 函数向 QTextEdit 框写入文本