qt - 如何使用样式表更改 QPushButton 图标/文本间距?

标签 qt user-interface qtstylesheets

我对 Qt 的样式表方法还很陌生,我希望调整 QPushButton 上图标和文本之间的间距。

这就是我所指的差距:http://imageshack.us/scaled/thumb/593/4kem.png (stackoverflow 还不让我发图片)

QPushButton {
   qproperty-icon: theme_url("/button_action/add");
   qproperty-iconSize: 14px; 
}

有没有我可以用来调整这个空间的参数?我试过 margin , padding , spacing ?也许我可以使用不同的选择器来抓取图标?

最佳答案

实际上,使用 QPushButton 你就不走运了。您可以在 qt documentation 中找到样式按钮的完整工作选项列表。 (我假设您使用 qt5,但它也可用于其他版本)。

如果您想对图标进行更多控制,通常建议您将 QPushButton 与 QToolButton 交换,它们完全相同,只是它们具有额外的功能以使其与工具栏兼容 - 而且 - 它们有更多的图标放置选项。但这可能对您不起作用,因为 as you can see它们的样式与 QPushButtons 完全相同。但是请查看“toolButtonStyle”参数,它允许您四处移动图标。

列表中的下一个是更改艺术品。如果您想要的只是更多空间,那么只需将额外的空像素添加到图稿中即可。这确实伤害了完美主义者的头脑,但很有效。

列表中的下一个是子类化 QPushButton 并自己覆盖油漆。听起来比它更令人生畏。 Qt 中的子类化已经成为一种习惯,而且效果很好。这是一个 tutorial i googled在关于子类化问题的瞬间(对于 4.8,但对于 5 应该大致相同)。它甚至涵盖了覆盖绘画事件。

希望这是有帮助的。

关于qt - 如何使用样式表更改 QPushButton 图标/文本间距?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17345648/

相关文章:

c++ - 为什么 QHeaderView::section:checked 和 :selected 样式表不起作用?

c++ - 关于通过套接字编程发送图像文件(jpeg、png)的提示/示例?

c++ - 如何在QML 的RichText 中使用html 源将图片居中?

c++ - QAction : No such file or directory

qt - 不同渲染速度的 Qt widgets

java - 我无法让 GUI 正确显示

java - 将 xml 添加到 android studio 中的 LinearLayout 项目

javascript - 创建基于 Canvas 的 UI 组件是否有意义?

c++ - 在显示 child 之前,不会考虑父样式表填充

Qt 样式表语法不起作用?