QFontComboBox Class
The QFontComboBox widget is a combobox that lets the user select a font family. More...
Header: | #include <QFontComboBox> |
CMake: | find_package(Qt6 COMPONENTS Widgets REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
qmake: | QT += widgets |
Inherits: | QComboBox |
Public Types
enum | FontFilter { AllFonts, ScalableFonts, NonScalableFonts, MonospacedFonts, ProportionalFonts } |
flags | FontFilters |
Properties
- currentFont : QFont
- fontFilters : FontFilters
- writingSystem : QFontDatabase::WritingSystem
Public Functions
QFontComboBox(QWidget *parent = nullptr) | |
virtual | ~QFontComboBox() |
QFont | currentFont() const |
QFontComboBox::FontFilters | fontFilters() const |
void | setFontFilters(QFontComboBox::FontFilters filters) |
void | setWritingSystem(QFontDatabase::WritingSystem) |
QFontDatabase::WritingSystem | writingSystem() const |
Reimplemented Public Functions
virtual QSize | sizeHint() const override |
Public Slots
void | setCurrentFont(const QFont &f) |
Signals
void | currentFontChanged(const QFont &font) |
Reimplemented Protected Functions
virtual bool | event(QEvent *e) override |
Detailed Description
The combobox is populated with an alphabetized list of font family names, such as Arial, Helvetica, and Times New Roman. Family names are displayed using the actual font when possible. For fonts such as Symbol, where the name is not representable in the font itself, a sample of the font is displayed next to the family name.
QFontComboBox is often used in toolbars, in conjunction with a QComboBox for controlling the font size and two QToolButtons for bold and italic.
When the user selects a new font, the currentFontChanged() signal is emitted in addition to currentIndexChanged().
Call setWritingSystem() to tell QFontComboBox to show only fonts that support a given writing system, and setFontFilters() to filter out certain types of fonts as e.g. non scalable fonts or monospaced fonts.
See also QComboBox, QFont, QFontInfo, QFontMetrics, QFontDatabase, and Character Map Example.
Member Type Documentation
enum QFontComboBox::FontFilter
flags QFontComboBox::FontFilters
This enum can be used to only show certain types of fonts in the font combo box.
Constant | Value | Description |
---|---|---|
QFontComboBox::AllFonts | 0 | Show all fonts |
QFontComboBox::ScalableFonts | 0x1 | Show scalable fonts |
QFontComboBox::NonScalableFonts | 0x2 | Show non scalable fonts |
QFontComboBox::MonospacedFonts | 0x4 | Show monospaced fonts |
QFontComboBox::ProportionalFonts | 0x8 | Show proportional fonts |
The FontFilters type is a typedef for QFlags<FontFilter>. It stores an OR combination of FontFilter values.
Property Documentation
currentFont : QFont
This property holds the currently selected font
Access functions:
QFont | currentFont() const |
void | setCurrentFont(const QFont &f) |
Notifier signal:
void | currentFontChanged(const QFont &font) |
See also currentIndex and currentText.
fontFilters : FontFilters
This property holds the filter for the combobox
By default, all fonts are listed.
Access functions:
QFontComboBox::FontFilters | fontFilters() const |
void | setFontFilters(QFontComboBox::FontFilters filters) |
See also writingSystem.
writingSystem : QFontDatabase::WritingSystem
This property holds the writing system that serves as a filter for the combobox
If script is QFontDatabase::Any (the default), all fonts are listed.
Access functions:
QFontDatabase::WritingSystem | writingSystem() const |
void | setWritingSystem(QFontDatabase::WritingSystem) |
See also fontFilters.
Member Function Documentation
QFontComboBox::QFontComboBox(QWidget *parent = nullptr)
Constructs a font combobox with the given parent.
[signal]
void QFontComboBox::currentFontChanged(const QFont &font)
This signal is emitted whenever the current font changes, with the new font.
Note: Notifier signal for property currentFont.
See also currentFont.
[virtual]
QFontComboBox::~QFontComboBox()
Destroys the combobox.
[override virtual protected]
bool QFontComboBox::event(QEvent *e)
Reimplements: QComboBox::event(QEvent *event).
[override virtual]
QSize QFontComboBox::sizeHint() const
Reimplements: QComboBox::sizeHint() const.