c++ - signal - qt eventos
Diferencia entre QPushButton y QToolButton (2)
Desde Qt doc: http://doc.qt.io/qt-5/qtoolbutton.html#details
"Un botón de herramienta es un botón especial que brinda acceso rápido a comandos u opciones específicas. A diferencia de un botón de comando normal, un botón de herramienta generalmente no muestra una etiqueta de texto, sino que muestra un icono".
Cuando quiero un botón en la GUI simple con solo un icono, uso QToolButton. Pero cuando quiero un botón clásico, uso QPushButton.
No hay grandes diferencias,
Soy nuevo en Qt y la diferencia entre QPushButton y QToolButton no es tan clara para mí.
Sé que un QToolButton se usa generalmente en un QToolBar y generalmente solo muestra un icono, sin texto, pero no entiendo muy bien la diferencia principal entre ambos.
¿Tiene alguna diferencia más grande? ¿Cuándo debo usar QPushButton y cuándo debo usar QToolButton ?
Me gustaría saber esto para usar el botón más apropiado, y necesito realizar algunas pruebas de GUI y tal vez pueda ser relevante.
QToolButton forma parte de un grupo de widgets en el módulo QtWidgets que se centra en QAction : QMenu , QToolBar , etc. QPushButton es solo un botón. Como resultado, QToolButton es mucho más complejo bajo el capó que QPushButton . Una lista (no completa) de ejemplos:
-
QToolButtonestá diseñado para integrarse estrechamente conQAction. El cambio del icono, texto, etc. de la acción predeterminada de un botón de la herramienta se refleja en el botón. - Puede cambiar el diseño del contenido del botón de la herramienta (solo icono, solo texto, texto junto al icono, texto debajo del icono).
-
QToolButtonadmite un tipo de botón "dividir" donde una zona activa de barra lateral abre un menú en lugar de activar la acción predeterminada. - Los botones de herramientas se pueden crear directamente en un
QToolBaragregando una acción, mientras que otros widgets deben agregarse explícitamente.
También tenga en cuenta que:
-
QToolButtontiene márgenes internos predeterminados más pequeños queQPushButton, lo que refleja que se debe mostrar en una fila o cuadrícula ajustada.QPushButtones más para los botones de tipo "Ok" / "Cerrar" que contienen texto con un icono opcional. - Un
QToolButtongeneralmente debe tener un icono. UnQPushButtonsiempre debe tener texto.