首先,我是一个初学者,请原谅我,如果这个问题是愚蠢的或误导的。 我有下面的问题,我创建像这样的图形
setPixmap(QPixmap(":Graphics/Terrain"));
(这是一个正方形),然后我想添加框架(红色od蓝色将取决于某些条件)。我有单独的图形文件,当我添加它(如上所述)时,在屏幕上显示中间有白色方块的框架,其中覆盖了更多的" Terrain"。如何使这个白色方块透明?
setPixmap(QPixmap(":Graphics/Terrain"));
/*
if (ifPlayers)
{
setPixmap(QPixmap(":Graphics/Blue"));
}
else
{
setPixmap(QPixmap(":Graphics/Red"));
}
*/
当我添加框架时,它覆盖了terrain.png。我希望它们重叠。
答案 0 :(得分:1)
Pixmaps不会彼此堆叠:每次调用setPixmap
都会替换可以在QLabel中加载的唯一像素图。
如果框架不太精细,你可以使用qss,即使用CSS样式表为标签设置边框:
if (ifPlayers)
{
setStyleSheet("border: 1px solid blue;");
}
else
{
setStyleSheet("border: 1px solid red;");
}
有关在Qt小部件中使用CSS的更多信息,here。