QPushButton 的大小打破了布局高度(MacOS)
Posted
技术标签:
【中文标题】QPushButton 的大小打破了布局高度(MacOS)【英文标题】:The size of QPushButton breaks layout height (MacOS) 【发布时间】:2014-11-04 10:33:03 【问题描述】:让我们考虑一下 QFormLayout 的情况。例如需要在布局行中添加按钮:
如您所见,按钮布局的高度大于其他行的高度。这是因为按钮本身的高度大于行编辑器的高度——按钮周围有空白:
结果所有带有 QPushButton 的布局都被破坏了。即使在标准对话框(QMessageBox)中,窗口底部的按钮周围也有很大的边距。
据我所知,此问题仅与 MacO 相关。 有一些类似的问题here 和here,但是没有答案为什么 Mac 上的 QPushButton 有这样的大小,以及如何正确解决这个问题。
【问题讨论】:
最小尺寸提示的问题。 【参考方案1】:IMO 这是边距问题。使用不同的样式(在 OSX 上使用)边距被改变,你有这个效果。
尝试通过设置样式表来调整:
pushButton->setStyleSheet("QPushButton \n"
" margin: 2px;\n"
"\n")
【讨论】:
这是一个糟糕的解决方案,因为按钮失去了形状 - 变成了方形。以上是关于QPushButton 的大小打破了布局高度(MacOS)的主要内容,如果未能解决你的问题,请参考以下文章