QFontDialog Class
La clase QFontDialog proporciona un widget de diálogo para seleccionar una fuente. Más...
| Cabecera: | #include <QFontDialog> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets)target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| Hereda: | QDialog |
- Lista de todos los miembros, incluyendo los heredados
- QFontDialog es parte de Diálogos Estándar.
Tipos Públicos
| enum | FontDialogOption { NoButtons, DontUseNativeDialog, ScalableFonts, NonScalableFonts, MonospacedFonts, ProportionalFonts } |
| flags | FontDialogOptions |
Propiedades
- currentFont : QFont
- options : FontDialogOptions
Funciones públicas
| QFontDialog(QWidget *parent = nullptr) | |
| QFontDialog(const QFont &initial, QWidget *parent = nullptr) | |
| QFont | currentFont() const |
| void | open(QObject *receiver, const char *member) |
| QFontDialog::FontDialogOptions | options() const |
| QFont | selectedFont() const |
| void | setCurrentFont(const QFont &font) |
| void | setOption(QFontDialog::FontDialogOption option, bool on = true) |
| void | setOptions(QFontDialog::FontDialogOptions options) |
| bool | testOption(QFontDialog::FontDialogOption option) const |
Funciones públicas reimplementadas
| virtual void | setVisible(bool visible) override |
Señales
| void | currentFontChanged(const QFont &font) |
| void | fontSelected(const QFont &font) |
Miembros públicos estáticos
| QFont | getFont(bool *ok, const QFont &initial, QWidget *parent = nullptr, const QString &title = QString(), QFontDialog::FontDialogOptions options = FontDialogOptions()) |
| QFont | getFont(bool *ok, QWidget *parent = nullptr) |
Funciones protegidas reimplementadas
| virtual void | changeEvent(QEvent *e) override |
| virtual void | done(int result) override |
Descripción Detallada
Un diálogo de fuentes se crea a través de una de las funciones estáticas getFont().
Ejemplos:
bool ok; QFont font = QFontDialog::getFont( &ok, QFont("Helvetica [Cronyx]", 10), this); if (ok) { // the user clicked OK and font is set to the font the user selected } else { // the user canceled the dialog; font is set to the initial // value, in this case Helvetica [Cronyx], 10 }
El diálogo también puede usarse para establecer directamente la fuente de un widget:
myWidget.setFont(QFontDialog::getFont(0, myWidget.font()));
Si el usuario pulsa OK se usará la fuente que eligió para miWidget, y si pulsa Cancelar se usará la fuente original.

Véase también QFont, QFontInfo, QFontMetrics, QColorDialog, QFileDialog, y Ejemplo de diálogos estándar.
Documentación de Tipos de Miembros
enum QFontDialog::FontDialogOption
flags QFontDialog::FontDialogOptions
Este enum especifica varias opciones que afectan al aspecto de un diálogo de fuentes.
Por ejemplo, permite especificar qué tipo de fuente debe mostrarse. Si no se especifica ninguna, se mostrarán todas las fuentes disponibles.
Tenga en cuenta que las opciones de filtrado de fuentes pueden no estar soportadas en algunas plataformas (por ejemplo, Mac). Siempre son compatibles con el diálogo no nativo (utilizado en Windows o Linux).
| Constante | Valor | Descripción |
|---|---|---|
QFontDialog::NoButtons | 0x00000001 | No mostrar los botones OK y Cancel. (Útil para "diálogos en vivo"). |
QFontDialog::DontUseNativeDialog | 0x00000002 | Utilizar el diálogo de fuentes estándar de Qt en Mac en lugar del panel de fuentes nativo de Apple. |
QFontDialog::ScalableFonts | 0x00000004 | Mostrar fuentes escalables |
QFontDialog::NonScalableFonts | 0x00000008 | Mostrar fuentes no escalables |
QFontDialog::MonospacedFonts | 0x00000010 | Mostrar fuentes monoespaciadas |
QFontDialog::ProportionalFonts | 0x00000020 | Mostrar fuentes proporcionales |
El tipo FontDialogOptions es un typedef para QFlags<FontDialogOption>. Almacena una combinación OR de valores FontDialogOption.
Ver también options, setOption(), y testOption().
Documentación de Propiedades
currentFont : QFont
Esta propiedad contiene la fuente actual del diálogo.
Funciones de acceso:
| QFont | currentFont() const |
| void | setCurrentFont(const QFont &font) |
Señal del notificador:
| void | currentFontChanged(const QFont &font) |
options : FontDialogOptions
Esta propiedad contiene las distintas opciones que afectan al aspecto del cuadro de diálogo
Por defecto, todas las opciones están desactivadas.
Las opciones deben establecerse antes de mostrar el diálogo. Establecerlas mientras el diálogo está visible no garantiza que tenga un efecto inmediato en el diálogo (dependiendo de la opción y de la plataforma).
Funciones de acceso:
| QFontDialog::FontDialogOptions | options() const |
| void | setOptions(QFontDialog::FontDialogOptions options) |
Véase también setOption() y testOption().
Documentación de las funciones miembro
[explicit] QFontDialog::QFontDialog(QWidget *parent = nullptr)
Construye un diálogo de fuente estándar.
Utilice setCurrentFont() para establecer los atributos iniciales de la fuente.
El parámetro parent se pasa al constructor QDialog.
Véase también getFont().
[explicit] QFontDialog::QFontDialog(const QFont &initial, QWidget *parent = nullptr)
Construye un diálogo de fuente estándar con el parent dado y la fuente initial especificada.
[override virtual protected] void QFontDialog::changeEvent(QEvent *e)
Reimplementa: QWidget::changeEvent(QEvent *event).
QFont QFontDialog::currentFont() const
Devuelve la fuente actual.
Nota: Función Getter para la propiedad currentFont.
Véase también setCurrentFont() y selectedFont().
[signal] void QFontDialog::currentFontChanged(const QFont &font)
Esta señal se emite cuando se cambia la fuente actual. El nuevo tipo de letra se especifica en font.
La señal se emite mientras el usuario está seleccionando un tipo de letra. En última instancia, la fuente elegida puede diferir de la fuente actualmente seleccionada.
Nota: Señal notificadora para la propiedad currentFont.
Véase también currentFont, fontSelected(), y selectedFont().
[override virtual protected] void QFontDialog::done(int result)
Reimplementa: QDialog::done(int r).
Cierra el diálogo y establece su código de resultado a result. Si este diálogo se muestra con exec(), done() hace que el bucle de eventos local termine, y exec() devuelva result.
Véase también QDialog::done().
[signal] void QFontDialog::fontSelected(const QFont &font)
Esta señal se emite cuando se ha seleccionado una fuente. La fuente seleccionada se especifica en font.
La señal sólo se emite cuando un usuario ha elegido la fuente final que se utilizará. No se emite mientras el usuario está cambiando la fuente actual en el diálogo de fuentes.
Véase también selectedFont(), currentFontChanged(), y currentFont.
[static] QFont QFontDialog::getFont(bool *ok, const QFont &initial, QWidget *parent = nullptr, const QString &title = QString(), QFontDialog::FontDialogOptions options = FontDialogOptions())
Ejecuta un diálogo modal de fuentes y devuelve una fuente.
Si el usuario hace clic en OK, se devuelve la fuente seleccionada. Si el usuario hace clic en Cancel, se devuelve la fuente initial.
El diálogo se construye con el parámetro parent y las opciones especificadas en options. title se muestra como el título de la ventana del diálogo y initial es la fuente seleccionada inicialmente. Si el parámetro ok no es nulo, el valor al que hace referencia se establece en true si el usuario hace clic en OK, y en false si el usuario hace clic en Cancel.
Ejemplos:
bool ok; QFont font = QFontDialog::getFont(&ok, QFont("Times", 12), this); if (ok) { // font is set to the font the user selected } else { // the user canceled the dialog; font is set to the initial // value, in this case Times, 12. }
El cuadro de diálogo también puede utilizarse para establecer directamente la fuente de un widget:
myWidget.setFont(QFontDialog::getFont(0, myWidget.font()));
En este ejemplo, si el usuario hace clic en Aceptar se utilizará la fuente que haya elegido, y si hace clic en Cancelar se utilizará la fuente original.
[static] QFont QFontDialog::getFont(bool *ok, QWidget *parent = nullptr)
Ejecuta un diálogo modal de fuentes y devuelve una fuente.
Si el usuario hace clic en OK, se devuelve la fuente seleccionada. Si el usuario hace clic en Cancel, se devuelve la fuente Qt predeterminada.
El diálogo se construye con el parámetro parent. Si el parámetro ok no es nulo, el valor al que hace referencia se establece en true si el usuario hace clic en OK, y en false si el usuario hace clic en Cancel.
Ejemplo:
bool ok; QFont font = QFontDialog::getFont(&ok, this); if (ok) { // font is set to the font the user selected } else { // the user canceled the dialog; font is set to the default // application font, QApplication::font() }
Esta es una función sobrecargada.
void QFontDialog::open(QObject *receiver, const char *member)
Abre el diálogo y conecta su señal fontSelected() a la ranura especificada por receiver y member.
La señal se desconectará de la ranura cuando se cierre el diálogo.
QFont QFontDialog::selectedFont() const
Devuelve la fuente que el usuario seleccionó al pulsar el botón OK o equivalente.
Nota: Este tipo de letra no siempre es el mismo que el que contiene la propiedad currentFont, ya que el usuario puede elegir distintos tipos de letra antes de seleccionar finalmente el que va a utilizar.
void QFontDialog::setCurrentFont(const QFont &font)
Establece la fuente resaltada en QFontDialog a la dada font.
Nota: Función Setter para la propiedad currentFont.
Véase también currentFont() y selectedFont().
void QFontDialog::setOption(QFontDialog::FontDialogOption option, bool on = true)
Establece el option dado para que esté habilitado si on es verdadero; de lo contrario, borra el option dado.
Véase también options y testOption().
[override virtual] void QFontDialog::setVisible(bool visible)
Reimplementa: QDialog::setVisible(bool visible).
bool QFontDialog::testOption(QFontDialog::FontDialogOption option) const
Devuelve true si el option dado está habilitado; en caso contrario, devuelve false.
© 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.