QToolBar 改变高度

QToolBar Change Height

在我的项目中,我有一个具有默认大小和大小策略的 QToolBar。我想将工具栏的高度增加到36px。

到目前为止我已经尝试过:

并没有增加工具栏的高度。唯一可行的是增加栏内 QToolButton 对象的大小,但这不是我想要做的。我只希望工具栏本身更高。

有什么建议吗?感谢您的宝贵时间。

编辑:我目前的解决方案是为工具栏中的 QToolButton 对象添加边距。我仍然不喜欢这个,因为我在工具栏中有不同的对象类型....令人沮丧。

toolbar->setFixedHeight(36) 应该有效

Documentation here

toolBar->setFixedHeight(36); - 效果很好。

但是如果我在这之后设置图标大小:

toolBar->setFixedHeight(36); 
toolBar->setIconSize(QSize(10, 10));

身高崩溃了。如果我通过样式表设置图标大小,也会发生这种情况。

更改调用顺序有帮助:

toolBar->setIconSize(QSize(10, 10));
toolBar->setFixedHeight(36);

我刚刚注意到我项目中的 QToolBar 也存在同样的问题,尽管在其上显式调用 setMinimumHeight(64),但它并没有改变它的高度。事实证明,使用 singleShot QTimer 将其延迟到主线程的事件循环中有助于:

# self is an instance of a QToolBar subclass
QtCore.QTimer.singleShot(0, lambda : self.setMinimumHeight(64))

(在 PyQt5 中,但你应该明白了。)