2013-06-29 108 views
6

我正在學習QT,並有一個快速問題:QT畫圓

以x,y爲中心點繪製半徑爲r的圓的最佳方法是什麼?

謝謝!

+0

要求教程只是一個側面說明,主要問題是詢問有關該圈子。 – Nathan

+0

將其更改爲只詢問該圈子。 – Nathan

+1

哦,因爲它的價值:只是畫圓,看起來很像[另一個問題](http://stackoverflow.com/q/9517427/179910)。 –

回答

11

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); 

希望有所幫助。