在我的Qt项目中用Dash Dot绘制圆圈

时间:2014-04-24 09:07:37

标签: qt draw geometry

要使用短划线绘制圆圈,我应该包含哪些内容以及我应该使用哪些代码?我在我的项目中尝试这些代码不起作用:

QPainter painter(this);
    painter.setBackgroundColor(Qt::cyan);
    painter.setBrush(Qt::yellow);
    painter.drawEllipse(0,0,500,500);

我只看到我的正常项目工作不是圈子或区域。请帮助我写代码的地方?在main.cpp或myproject.cpp中?非常感谢。

1 个答案:

答案 0 :(得分:0)

您应该在QGraphicsItem的paint事件或QWidget的paintEvent中编写代码。您还可以使用Qt :: DashDotLine作为笔:

void myItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
{
    painter->setRenderHint(QPainter::Antialiasing,true);
    painter->setWindow( -500,-500,1000,1000);
    painter->setViewport( -500,-500,1000,1000);

    painter->setPen(QPen(Qt::black, 20, Qt::DashDotLine));

    painter->setBrush(Qt::yellow);
    painter->drawEllipse(-450, -450, 900, 900);
}