Windowsとして使用しているQWidgetの子にウィジェットが表示されない理由を理解しようと(グーグルで)何時間も費やしました。
子は主に QLabel と一部の QSlider です。レイアウトは QGridlayout です
ここに私のウィンドウコードの一部があります:
FenPrincipale::FenPrincipale()
{
this->setWindowTitle("Premier Test");
this->resize(400, 200);
QPalette palette;
palette.setBrush(this->backgroundRole(), QBrush(QImage("images/metal400x200.png")));
this->setPalette(palette);
/*
this->setStyleSheet("background-image: url(images/metal400x200.png); "
"background-position: top left; "
"background-repeat: repeat-xy;"
);
*/
buildChildren();
buildLayout();
this->setLayout(layout_principale);
}
編集:
私の子供たちはどのように構築されていますか
void FenPrincipale::buildChildren()
{
m_title = new QLabel("MonTest");
m_nextPageButton = new QLabel(">");
m_line = new QLabel("Slide here");
m_labelSlider = new QSlider;
m_result = new QLabel("Result");
/*
* Other children is set here...
*/
}
出来上がりの結果:
背景を設定するためにフォントやその他の方法を変更しようとしましたが、背景は常に他のウィジェットの上に表示されます。
何か不足していますか?