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

发布于 2024-11-28 01:05:11 字数 496 浏览 1 评论 0原文

我的主窗口上有一个 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; }");

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

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

I have a QPushButton on my main window:

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

Then I associate some style with it:

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

The background image shows up and it looks like the style is applied successfully, however the button is smaller than the background image. How can I make it resize to fit its background image?

If it cannot be done automatically, is it possible to access the style applied to the button somewhere, and resize the button based on it? I'd just like to avoid hard-coding the values if I can avoid it.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

黎歌 2024-12-05 01:05:11
    pushButton.resize( QImage( "filename.png" ).size() );
    pushButton.resize( QImage( "filename.png" ).size() );
栖迟 2024-12-05 01:05:11

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

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

Ok I just figured out that the width and height can be set in the CSS itself, which is probably the right way to do it:

QPushButton#practiceButton {
    background-image: url('NavigationButtonUp.png');
    padding:0;
    margin:0;
    border:none;
    width: 194px;
    height: 40px;
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文