QPushButton的大小打断布局高度(MacOS) 让我们考虑一下QFormLayout的情况。例如,需要将按钮添加到布局行:

QPushButton的大小打断布局高度(MacOS) 让我们考虑一下QFormLayout的情况。例如,需要将按钮添加到布局行:,macos,qt,Macos,Qt,正如您所看到的,带有按钮的布局的高度大于其他行的高度。这是因为按钮本身的高度大于行编辑器的高度–按钮周围有空白: 结果,所有带有QPushButton的布局都被破坏。即使在标准对话框(QMessageBox)中,窗口底部的按钮也有很大的边距 据我所知,这个问题只与MacOs有关。 也有一些类似的问题,但没有答案为什么Mac上的QPushButton有这么大,以及如何正确地解决这个问题 IMO这是利润率的问题。使用不同的样式(在OSX上使用)时,边距会发生变化,您会产生这种效果 尝试通过设置样式

正如您所看到的,带有按钮的布局的高度大于其他行的高度。这是因为按钮本身的高度大于行编辑器的高度–按钮周围有空白:

结果,所有带有QPushButton的布局都被破坏。即使在标准对话框(QMessageBox)中,窗口底部的按钮也有很大的边距

据我所知,这个问题只与MacOs有关。
也有一些类似的问题,但没有答案为什么Mac上的QPushButton有这么大,以及如何正确地解决这个问题

IMO这是利润率的问题。使用不同的样式(在OSX上使用)时,边距会发生变化,您会产生这种效果

尝试通过设置样式表来进行调整:

pushButton->setStyleSheet("QPushButton {\n"
                          "    margin: 2px;\n"
                          "}\n")

这是一个最小尺寸提示的问题。这是一个糟糕的解决方案,因为按钮失去了形状-变成正方形。