在使用 QPainter 绘制图形时,可以通过调用 QPainter::setBrush()
函数设置绘制的背景。下面是一个简单的示例:
#include <QtWidgets>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
// 创建一个窗口
QWidget window;
window.resize(300, 200);
// 设置背景色为灰色
QPalette pal = window.palette();
pal.setColor(QPalette::Background, Qt::gray);
window.setAutoFillBackground(true);
window.setPalette(pal);
// 在窗口上绘制一个圆形
QPainter painter(&window);
painter.setRenderHint(QPainter::Antialiasing); // 抗锯齿
painter.setPen(Qt::NoPen); // 不画边框线条
painter.setBrush(Qt::red); // 红色填充颜色
QRectF rect(50.0, 50.0, 100.0, 100.0);
painter.drawEllipse(rect);
// 显示窗口
window.show();
return a.exec();
}
在这个示例中,我们首先创建了一个大小为 300x200 的窗口,并将其背景色设置为灰色。接着,在窗口上绘制了一个红色的圆形。
希望这个回答对您有所帮助。