我是Qt的新手,QPushButton
和QToolButton
之间的差异对我来说并不是那么清楚。
我知道QToolButton
通常使用QToolBar
,它通常只显示一个图标,没有文字,但我不太明白两者之间的主要区别。
它有更大的区别吗?
我应该何时使用QPushButton
,何时应该使用QToolButton
?
我想知道这个使用最合适的按钮,我需要执行一些GUI测试,也许它可能是相关的。
答案 0 :(得分:21)
QToolButton
是QtWidgets模块中一组小部件的一部分,它围绕QAction
:QMenu
,QToolBar
等等。 QPushButton
只是一个按钮。因此,QToolButton
比QPushButton
更加复杂。一个(不完整的)示例列表:
QToolButton
旨在与QAction
紧密集成。更改工具按钮默认操作的图标,文本等将反映在按钮上。QToolButton
支持“拆分”按钮类型,其中侧边栏热区打开菜单而不是触发默认操作。QToolBar
中创建工具按钮,而必须明确添加其他小部件。另请注意:
QToolButton
的默认内部边距小于QPushButton
,反映出它意图以紧密的行或网格显示。 QPushButton
更适用于包含带可选图标的文字的“确定”/“关闭”类型按钮。QToolButton
通常应该有一个图标。 QPushButton
应始终包含文字。答案 1 :(得分:5)
来自Qt doc:http://doc.qt.io/qt-5/qtoolbutton.html#details
“工具按钮是一个特殊按钮,可以快速访问特定命令或选项。与普通命令按钮相反,工具按钮通常不显示文本标签,而是显示图标。”< / p>
当我想在GUI中只有一个图标的按钮时,我使用QToolButton。但是当我想要一个经典按钮时,我会使用QPushButton。
没有太大差异,