我是Qt.i的新手我正在通过QGraphicsScene类处理画布小部件。但是我无法更改小部件的默认白色背景。这是code.i已经尝试使用QBrush来设置背景。但它没有工作。它仍然是白色的。以下代码中的问题是什么?
int main(int argc, char **argv){
QApplication a(argc, argv);
QGraphicsScene canvas;
canvas.addText("Hello World");
QColor *color=new QColor(0x70,0x80,0x50,255);
QBrush *brush=new QBrush();
brush->setColor(*color);
canvas.setBackgroundBrush(*brush);
QGraphicsView view(&canvas);
view.show();
return a.exec();
}
答案 0 :(得分:5)
尝试将颜色传递给画笔构造函数而不是之后
QBrush brush(QColor(0x70, 0x80, 0x50, 255));
canvas.setBackgroundBrush(brush);
将画笔样式设置为Qt::SolidPattern
。默认的画笔构造函数将样式设置为Qt::NoBrush
。见http://qt-project.org/doc/qt-4.8/qbrush.html#QBrush
答案 1 :(得分:-1)
view.setStyleSheet("background-color: black;");