设置从磁盘加载的背景图像

时间:2009-08-13 15:26:40

标签: image qt background

我想在运行时更改QFrame背景,但是,我会从磁盘(图像)加载背景。 在QFrame设置样式表不起作用,因为图像不在资源中。

一种方法是设置QPushButton图标,例如:

QPixmap img("/images/01.png");
ui.pushButton->setIcon(QIcon(img));

但是,QPushButton对我没用。我需要把其他东西放在QFrame中。

2 个答案:

答案 0 :(得分:5)

根据我在您的问题中的理解,您不想使用资源? 如果是这种情况,您可以执行以下操作:

ui->frame->setFrameStyle(QFrame::StyledPanel);
ui->frame->setStyleSheet("background-image: url(C:/test.jpg)");

答案 1 :(得分:4)

你也可以尝试这样的事情:

QPalette pal;
pal.setBrush( ui.frame->backgroundRole(), QBrush( QImage( "/images/01.png" ) ) );
ui.frame->setPalette( pal );