如何使QPushButton与其背景图像的尺寸相同?

时间:2011-08-06 17:05:46

标签: qt button stylesheet background-image

我的主窗口上有一个QPushButton:

practiceButton_ = new QPushButton(this);
practiceButton_->setText(_("Practice"));
practiceButton_->setObjectName("practiceButton");

然后我将一些风格与它联系起来:

qApp->setStyleSheet("QPushButton#practiceButton { background-image: url('myfile.png'); padding:0; margin:0; border:none; }");

显示背景图像,看起来样式已成功应用,但按钮小于背景图像。如何调整大小以适合其背景图像?

如果无法自动完成,是否可以访问某处应用于按钮的样式,并根据它调整按钮的大小?如果我可以避免,我只想避免对值进行硬编码。

2 个答案:

答案 0 :(得分:2)

    pushButton.resize( QImage( "filename.png" ).size() );

答案 1 :(得分:1)

好的我刚才发现宽度和高度可以在CSS本身设置,这可能是正确的方法:

QPushButton#practiceButton {
    background-image: url('NavigationButtonUp.png');
    padding:0;
    margin:0;
    border:none;
    width: 194px;
    height: 40px;
}