我使用QPalette来改变QWidget的背景可以成功,但改变QListWidget的背景就失败了,不知什么原因?要怎样才能改变QListWidget的背景呢?
我的代码如下,将QListWidget改为QWidget,是可以生效的:
QListWidget* m_IconView = new QListWidget;
//QPalette pal = m_IconView->palette();
//pal.setBrush(m_IconView->backgroundRole(), QPixmap(":/rc/simlab.png"));
//m_IconView->setAutoFillBackground(true);
//m_IconView->setPalette(pal);
QPixmap m_tile = QPixmap(100, 100);
m_tile.fill(Qt::white);
QPainter pt(&m_tile);
QColor color(255, 0, 0);
pt.fillRect(0, 0, 50, 50, color);
pt.fillRect(50, 50, 50, 50, color);
pt.end();
QPalette pal = m_IconView->palette();
pal.setBrush(m_IconView->backgroundRole(), m_tile);
m_IconView->setAutoFillBackground(true);
m_IconView->setPalette(pal);
[ 此贴被XChinux在2006-05-19 08:08重新编辑 ]