QWhatsThis Class
La clase QWhatsThis proporciona una descripción sencilla de cualquier widget, es decir, responde a la pregunta "¿Qué es esto?". Más...
| Cabecera: | #include <QWhatsThis> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets)target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
- Lista de todos los miembros, incluyendo los heredados
- QWhatsThis es parte de Sistema de Ayuda.
Miembros públicos estáticos
| QAction * | createAction(QObject *parent = nullptr) |
| void | enterWhatsThisMode() |
| void | hideText() |
| bool | inWhatsThisMode() |
| void | leaveWhatsThisMode() |
| void | showText(const QPoint &pos, const QString &text, QWidget *w = nullptr) |
Descripción detallada
La ayuda "¿Qué es esto?" forma parte del sistema de ayuda en línea de una aplicación, y proporciona a los usuarios información sobre la funcionalidad y el uso de un widget concreto. Los textos de ayuda de "¿Qué es esto?" suelen ser más largos y detallados que los de tooltips, pero generalmente proporcionan menos información que la suministrada por ventanas de ayuda independientes.
QWhatsThis proporciona una única ventana con un texto explicativo que aparece cuando el usuario pregunta "¿Qué es esto?". La forma predeterminada en que los usuarios formulan la pregunta es mover el foco al widget correspondiente y pulsar Mayús+F1. El texto de ayuda aparece inmediatamente; desaparece en cuanto el usuario hace otra cosa. (Ten en cuenta que si existe un atajo de teclado para Mayús+F1, este mecanismo no funcionará). Algunos cuadros de diálogo proporcionan un botón "?" que los usuarios pueden pulsar para entrar en el modo "¿Qué es esto?"; a continuación, hacen clic en el widget correspondiente para que aparezca la ventana "¿Qué es esto?". También es posible incluir una opción de menú o un botón en la barra de herramientas para pasar al modo "¿Qué es esto?
Para añadir el texto "¿Qué es esto?" a un widget o a una acción, basta con llamar a QWidget::setWhatsThis() o QAction::setWhatsThis().
El texto puede ser texto enriquecido o texto sin formato. Si especifica una cadena con formato de texto enriquecido, se representará utilizando la hoja de estilos predeterminada, lo que permite incrustar imágenes en el texto mostrado. Para ser lo más rápida posible, la hoja de estilos por defecto utiliza un método sencillo para determinar si el texto puede ser mostrado como texto plano. Véase Qt::mightBeRichText() para más detalles.
newAct = new QAction(tr("&New"), this); newAct->setShortcut(tr("Ctrl+N")); newAct->setStatusTip(tr("Create a new file")); newAct->setWhatsThis(tr("Click this option to create a new file."));
Una forma alternativa de entrar en el modo "¿Qué es esto?" es llamar a createAction(), y añadir el QAction devuelto a un menú o a una barra de herramientas. Al invocar esta acción de ayuda contextual (en la imagen inferior, el botón con la flecha y el icono del signo de interrogación), el usuario pasa al modo "¿Qué es esto?". Si ahora hace clic en un widget, se muestra el texto de ayuda correspondiente. El modo se abandona cuando se proporciona ayuda o cuando el usuario pulsa Esc.

Puede entrar en el modo "¿Qué es esto?" mediante programación con enterWhatsThisMode(), comprobar el modo con inWhatsThisMode() y volver al modo normal con leaveWhatsThisMode().
Si desea controlar manualmente el comportamiento "¿Qué es esto?" de un widget, consulte Qt::WA_CustomWhatsThis.
También es posible mostrar diferentes textos de ayuda para diferentes regiones de un widget, utilizando un QHelpEvent del tipo QEvent::WhatsThis. Intercepte el evento de ayuda en la función QWidget::event() de su widget y llame a QWhatsThis::showText() con el texto que desea mostrar para la posición especificada en QHelpEvent::pos(). Si el texto es texto enriquecido y el usuario hace clic en un enlace, el widget también recibe un QWhatsThisClickedEvent con la referencia del enlace como QWhatsThisClickedEvent::href(). Si se gestiona un QWhatsThisClickedEvent (es decir, QWidget::event() devuelve true), la ventana de ayuda permanece visible. Llame a QWhatsThis::hideText() para ocultarla explícitamente.
Véase también QToolTip.
Documentación de las funciones miembro
[static] QAction *QWhatsThis::createAction(QObject *parent = nullptr)
Devuelve un QAction ya preparado, utilizado para invocar la ayuda contextual "¿Qué es esto?", con el parent dado.
El QAction devuelto proporciona una forma cómoda de permitir a los usuarios entrar en el modo "¿Qué es esto?".
[static] void QWhatsThis::enterWhatsThisMode()
Esta función cambia la interfaz de usuario al modo "¿Qué es esto? La interfaz de usuario puede volver al modo normal por el usuario (por ejemplo, haciendo clic o pulsando Esc), o mediante programación llamando a leaveWhatsThisMode().
Cuando se entra en el modo "¿Qué es esto?", se envía un mensaje QEvent de tipo Qt::EnterWhatsThisMode a todos los widgets de nivel superior.
Véase también inWhatsThisMode() y leaveWhatsThisMode().
[static] void QWhatsThis::hideText()
Si se muestra una ventana "¿Qué es esto?", esto la destruye.
Véase también showText().
[static] bool QWhatsThis::inWhatsThisMode()
Devuelve true si la interfaz de usuario está en modo "¿Qué es esto?"; en caso contrario devuelve false.
Véase también enterWhatsThisMode().
[static] void QWhatsThis::leaveWhatsThisMode()
Si la interfaz de usuario está en modo "¿Qué es esto?", esta función cambia al modo normal; en caso contrario, no hace nada.
Cuando se abandona el modo "¿Qué es esto?", se envía un QEvent de tipo Qt::LeaveWhatsThisMode a todos los widgets de nivel superior.
Véase también enterWhatsThisMode() y inWhatsThisMode().
[static] void QWhatsThis::showText(const QPoint &pos, const QString &text, QWidget *w = nullptr)
Muestra text como una ventana "¿Qué es esto?", en la posición global pos. El argumento opcional widget, w, se utiliza para determinar la pantalla apropiada en sistemas multicabezal.
Véase también hideText().
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.