我试了下,并没有要求,但一般设置为图像的大小,可以保证不失真,给你一个参考代码吧:
// 绘制出一个image
QImage image(1920, 1080, QImage::Format_ARGB32);
QPixmap pixmap("G:\\Monica2.jpg");
QPainter painter(&image);
painter.drawPixmap(0,0,1920,1080, pixmap);
// 展示绘制出的image
setAutoFillBackground(true);
QPalette pal(palette());
// QPalette:Window是背景色:A general background color.
// QBrush(image.scaled(size(), Qt::IgnoreAspectRatio,Qt::SmoothTransformation)):用于生成适配窗口大小的图片作为QBrush
pal.setBrush(QPalette::Window, QBrush(image.scaled(size(), Qt::IgnoreAspectRatio,
Qt::SmoothTransformation)));
setPalette(pal);
有问题可以讨论~