QFontComboBox 小部件是讓用戶選擇字體係列的組閤框。 更多...
| 頭: | #include <QFontComboBox> |
| CMake: |
find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| 繼承: | QComboBox |
| enum | FontFilter { AllFonts, ScalableFonts, NonScalableFonts, MonospacedFonts, ProportionalFonts } |
| flags | FontFilters |
| QFontComboBox (QWidget * parent = nullptr) | |
| virtual | ~QFontComboBox () |
| QFont | currentFont () const |
| std::optional<QFont> | displayFont (const QString & fontFamily ) const |
| QFontComboBox::FontFilters | fontFilters () const |
| QString | sampleTextForFont (const QString & fontFamily ) const |
| QString | sampleTextForSystem (QFontDatabase::WritingSystem writingSystem ) const |
| void | setDisplayFont (const QString & fontFamily , const QFont & font ) |
| void | setFontFilters (QFontComboBox::FontFilters filters ) |
| void | setSampleTextForFont (const QString & fontFamily , const QString & sampleText ) |
| void | setSampleTextForSystem (QFontDatabase::WritingSystem writingSystem , const QString & sampleText ) |
| void | setWritingSystem (QFontDatabase::WritingSystem) |
| QFontDatabase::WritingSystem | writingSystem () const |
| virtual QSize | sizeHint () const override |
| void | setCurrentFont (const QFont & f ) |
| void | currentFontChanged (const QFont & font ) |
| virtual bool | event (QEvent * e ) override |
組閤框是采用按字母順序排列的字體係列名稱 (譬如 Arial、Helvetica 及 Times New Roman) 列錶填充的。係列名稱的顯示是使用實際字體,當可能時。譬如 Symbol 字體,若名稱不以字體本身錶示,則字體樣本緊貼顯示在係列名稱旁。
QFontComboBox 經常用於工具欄,結閤 QComboBox 為控製字體大小和兩 QToolButton 對於加粗和斜體。
當用戶選擇新字體時, currentFontChanged () 信號發射,除瞭 currentIndexChanged ().
調用 setWritingSystem () 告訴 QFontComboBox 僅展示支持給定書寫係統的字體,和 setFontFilters () 過濾掉某些類型的字體,如:不可伸縮字體 (或等寬字體)。
另請參閱 QComboBox , QFont , QFontInfo , QFontMetrics , QFontDatabase ,和 字符映射範例 .
此枚舉可以用於僅展示字體組閤框中的某些類型的字體。
| 常量 | 值 | 描述 |
|---|---|---|
QFontComboBox::AllFonts
|
0
|
展示所有字體 |
QFontComboBox::ScalableFonts
|
0x1
|
展示可伸縮字體 |
QFontComboBox::NonScalableFonts
|
0x2
|
展示不可伸縮字體 |
QFontComboBox::MonospacedFonts
|
0x4
|
展示等寬字體 |
QFontComboBox::ProportionalFonts
|
0x8
|
展示成正比字體 |
FontFilters 類型是 typedef 對於 QFlags <FontFilter>。它存儲 FontFilter 值的 OR 組閤。
此特性保持目前選中的字體
訪問函數:
| QFont | currentFont () const |
| void | setCurrentFont (const QFont & f ) |
通知程序信號:
| void | currentFontChanged (const QFont & font ) |
另請參閱 currentIndex and currentText .
此特性保持用於組閤框的過濾器
默認情況下,列齣所有字體。
訪問函數:
| QFontComboBox::FontFilters | fontFilters () const |
| void | setFontFilters (QFontComboBox::FontFilters filters ) |
另請參閱 writingSystem .
此特性保持充當組閤框篩選器的寫入係統
若 script is QFontDatabase::Any (默認),列齣所有字體。
訪問函數:
| QFontDatabase::WritingSystem | writingSystem () const |
| void | setWritingSystem (QFontDatabase::WritingSystem) |
另請參閱 fontFilters .
[explicit]
QFontComboBox::
QFontComboBox
(
QWidget
*
parent
= nullptr)
構造字體組閤框采用給定 parent .
[虛擬]
QFontComboBox::
~QFontComboBox
()
銷毀組閤框。
[signal]
void
QFontComboBox::
currentFontChanged
(const
QFont
&
font
)
此信號發射,每當當前字體改變時,采用新的 font .
注意: 通知程序信號對於特性 currentFont .
另請參閱 currentFont .
[since 6.3]
std::optional
<
QFont
> QFontComboBox::
displayFont
(const
QString
&
fontFamily
) const
Returns the font (if set) to be used to display a given fontFamily (when the combo is open).
This function was introduced in Qt 6.3.
另請參閱 setDisplayFont ().
[override virtual protected]
bool
QFontComboBox::
event
(
QEvent
*
e
)
重實現: QComboBox::event (QEvent *event).
[since 6.3]
QString
QFontComboBox::
sampleTextForFont
(const
QString
&
fontFamily
) const
Returns the sample text to show after the font name (when the combo is open) for a given fontFamily .
This function was introduced in Qt 6.3.
另請參閱 setSampleTextForFont ().
[since 6.3]
QString
QFontComboBox::
sampleTextForSystem
(
QFontDatabase::WritingSystem
writingSystem
) const
Returns the sample text to show after the font name (when the combo is open) for a given writingSystem .
This function was introduced in Qt 6.3.
另請參閱 setSampleTextForSystem ().
[since 6.3]
void
QFontComboBox::
setDisplayFont
(const
QString
&
fontFamily
, const
QFont
&
font
)
設置 font to be used to display a given fontFamily (when the combo is open).
This function was introduced in Qt 6.3.
另請參閱 displayFont ().
[since 6.3]
void
QFontComboBox::
setSampleTextForFont
(const
QString
&
fontFamily
, const
QString
&
sampleText
)
設置 sampleText to show after the font name (when the combo is open) for a given fontFamily .
The sample text given with this function has priority over the one set with setSampleTextForSystem ().
This function was introduced in Qt 6.3.
另請參閱 sampleTextForFont ().
[since 6.3]
void
QFontComboBox::
setSampleTextForSystem
(
QFontDatabase::WritingSystem
writingSystem
, const
QString
&
sampleText
)
設置 sampleText to show after the font name (when the combo is open) for a given writingSystem .
The sample text given with setSampleTextForFont () has priority.
This function was introduced in Qt 6.3.
另請參閱 sampleTextForSystem ().
[override virtual]
QSize
QFontComboBox::
sizeHint
() const
重實現: QComboBox::sizeHint() const .