首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在QGraphicsRectItem中设置QGraphicsScene笔刷

如何在QGraphicsRectItem中设置QGraphicsScene笔刷
EN

Stack Overflow用户
提问于 2017-07-26 11:53:15
回答 1查看 1.1K关注 0票数 1

我正在尝试通过使用QGraphicsRectItem设置setBrush的画笔5 QBrush。但不起作用。这种行为令人困惑,因为它在某些情况下起作用。

代码包括我在Qt-Creator中创建的一个*.ui。我在上面加了一个QGraphiocsView。

代码语言:javascript
复制
QGraphicsScene *scene_;

scene_ = new QGraphicsScene(ui->graphicsView);
ui->graphicsView->setScene(scene_);

scene_->setBackgroundBrush(Qt::red);


for (int i=0; i<5; i++)
{
    QBrush tmpBrush;
    tmpBrush.setColor( QColor(200-i*15, i*15, 50) );
    QPen tmpPen;
    tmpPen.setColor(Qt::blue);        tmpPen.setWidth(2);

    QGraphicsRectItem*tmpRect = scene_->addRect( 2, 25*i, 100, 20, tmpPen, tmpBrush );
    tmpRect->setPen(tmpPen);          tmpRect->setBrush(tmpBrush);
}

我正在Ubuntu16.04中用QT5.7编写代码。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-26 12:38:48

您的画笔没有样式:-)或者,也许更有帮助的是,您用.

代码语言:javascript
复制
QBrush tmpBrush;

调用其文档状态的默认构造函数的

构造带有Qt::NoBrush样式的默认黑色画笔(即此画笔不会填充形状)。

所以,就把它改成..。

代码语言:javascript
复制
QBrush tmpBrush(Qt::SolidPattern);

你应该得到想要的结果。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45326188

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档