gpt4 book ai didi

c++ - 无法将 QBrush 设置为 QPainter

转载 作者:搜寻专家 更新时间:2023-10-31 01:49:43 25 4
gpt4 key购买 nike

void Widget::paintEvent(QPaintEvent *) {
QPainter painter(this);

QBrush br;
br.setColor(Qt::blue);
painter.setBrush(br);

// painter.setBrush(QBrush(Qt::blue));

painter.drawRect(10, 10, 50, 50);
}

此代码不起作用,未绘制蓝色矩形。但是注释行工作正常。为什么?

最佳答案

除了设置画笔的颜色,还需要设置画笔的样式:

br.setStyle(Qt:SolidPattern);

如果您检查第二个示例中使用的默认构造函数和构造函数签名,您将看到需要上述调用:

QBrush ( const QColor & color, Qt::BrushStyle style = Qt::SolidPattern )

QBrush::QBrush ()

Constructs a default black brush with the style Qt::NoBrush (i.e. this brush will not fill shapes).

关于c++ - 无法将 QBrush 设置为 QPainter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16130767/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com