中进行绘制。
在QML文档中,我发现了一个自定义类型(从c++定义)的例子,可以使用QPainter在其上绘制:
头:#include <QtQuick/QQuickPaintedItem>
class PieChart : public QQuickPaintedItem
{
...
public:
void paint(QPainter *painter);
...
};
源:void PieChart::paint(QPainter *painter)
{
QPen pen(m_color, 2);
painter->setPen(pen);
painter->setRenderHints(QPainter::Antialiasing, true);
painter->drawPie(boundingRect().adjusted(1, 1, -1, -1), 90 * 16, 290 * 16);
}
我如何派生一个类型来绘制(例如一条线)与QPainter异步?谢谢!
您可以通过多种方式进行异步绘制:
1)在某个点(甚至可能在单独的线程中)将您的内容绘制到QImage
中,并在QQuickPaintedItem::paint()
中简单地绘制该图像。