QFontComboBox Class

QFontComboBox 是一个提供用户选择字体的下拉列表框. 更多...

头文件: #include <QFontComboBox>
qmake: QT += widgets
开始支持版本: Qt 4.2
基类: QComboBox

公有类型

enum FontFilter { AllFonts, ScalableFonts, NonScalableFonts, MonospacedFonts, ProportionalFonts }
flags FontFilters

属性

公有函数

QFontComboBox(QWidget *parent = Q_NULLPTR)
~QFontComboBox()
QFont currentFont() const
FontFilters fontFilters() const
void setFontFilters(FontFilters filters)
void setWritingSystem(QFontDatabase::WritingSystem)
QFontDatabase::WritingSystem writingSystem() const

重新实现的公有函数

virtual QSize sizeHint() const

公有槽函数

void setCurrentFont(const QFont &f)
  • 5 个公有槽函数继承自 QComboBox
  • 19 个公有槽函数继承自 QWidget
  • 1 个公有槽函数继承自 QObject

信号

void currentFontChanged(const QFont &font)

重新实现的受保护函数

virtual bool event(QEvent *e)

其他继承的成员

  • 1 个公有变量继承自 QObject
  • 5 个静态公有成员继承自 QWidget
  • 10 个静态公有成员继承自 QObject
  • 15 个受保护的函数继承自 QComboBox
  • 35 个受保护的函数继承自 QWidget
  • 9 个受保护的函数继承自 QObject
  • 1 个受保护的函数继承自 QPaintDevice
  • 1 个受保护的槽函数继承自 QWidget
  • 2 个受保护的变量继承自 QObject
  • 1 protected type inherited from QPaintDevice

详细描述

QFontComboBox 是一个提供用户选择字体的下拉列表框.

下拉列表框以字母表顺序显示字体名称, 如 Arial, Helvetica, Times New Roman. 下拉列表框尽可能以实际字体显示字体族名称. 对于Symbol之类的字体, 如果名称不能展示字形, 则会在名称旁边显示一个字体示例.

QFontComboBox 经常放置在工具栏, 与控制字体大小的 QComboBox 和粗体, 斜体 QToolButton配合使用.

当用户选择一个新字体, QFontComboBox会发出两个信号: currentFontChanged() 和 currentIndexChanged().

调用 setWritingSystem() 设置 QFontComboBox 显示特定字体, 调用 setFontFilters() 过滤某些字体, 例如. 不可缩放字体或等宽字体.

Screenshot of QFontComboBox on Windows Vista

参见 QComboBox, QFont, QFontInfo, QFontMetrics, QFontDatabase, Character Map Example.

成员类型

enum QFontComboBox::FontFilter
flags QFontComboBox::FontFilters

This enum can be used to only show certain types of fonts in the font combo box.

ConstantValueDescription
QFontComboBox::AllFonts0Show all fonts
QFontComboBox::ScalableFonts0x1Show scalable fonts
QFontComboBox::NonScalableFonts0x2Show non scalable fonts
QFontComboBox::MonospacedFonts0x4Show monospaced fonts
QFontComboBox::ProportionalFonts0x8Show proportional fonts

The FontFilters type is a typedef for QFlags<FontFilter>. It stores an OR combination of FontFilter values.

属性

currentFont : QFont

This property holds the currently selected font

访问函数:

QFont currentFont() const
void setCurrentFont(const QFont &f)

Notifier signal:

void currentFontChanged(const QFont &font)

参见 currentIndex and currentText.

fontFilters : FontFilters

This property holds the filter for the combobox

By default, all fonts are listed.

访问函数:

FontFilters fontFilters() const
void setFontFilters(FontFilters filters)

参见 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.

访问函数:

QFontDatabase::WritingSystem writingSystem() const
void setWritingSystem(QFontDatabase::WritingSystem)

参见 fontFilters.

成员函数

QFontComboBox::QFontComboBox(QWidget *parent = Q_NULLPTR)

Constructs a font combobox with the given parent.

QFontComboBox::~QFontComboBox()

Destroys the combobox.

[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.

参见 currentFont.

[virtual protected] bool QFontComboBox::event(QEvent *e)

重新实现 QObject::event().

[virtual] QSize QFontComboBox::sizeHint() const

重新实现 QWidget::sizeHint().