Qt QFontDialog:获取字体颜色

Qt QFontDialog:获取字体颜色,qt,fonts,Qt,Fonts,在mac上,QFontDialog被映射到一个漂亮的系统字体对话框。 可以在每个系统字体之间进行选择,也可以选择字体颜色和效果(下划线、删除线等) 如何获取这些属性 bool ok; QFont font = QFontDialog::getFont(&ok, QFont("Helvetica", 10), this); if (ok) { // do something } 在使用QFontDialog时,似乎无法从中获取颜色属性 使用Mac时,您会看到Mac本机面板,其中也

在mac上,
QFontDialog
被映射到一个漂亮的系统字体对话框。 可以在每个系统字体之间进行选择,也可以选择字体颜色和效果(下划线、删除线等)

如何获取这些属性

bool ok;
QFont font = QFontDialog::getFont(&ok, QFont("Helvetica", 10), this);
if (ok) {
    // do something
}
在使用
QFontDialog
时,似乎无法从中获取颜色属性

使用Mac时,您会看到Mac本机面板,其中也会显示颜色。建议不要在Mac上使用本机面板:

在Mac上使用Qt的标准字体对话框,而不是苹果的本机字体面板。(目前,从未使用本机对话框,但在未来的Qt版本中可能会发生变化。)

注意,上述部分(可能在未来版本中更改)是从文档上的qt4版本开始出现的

您可以使用
option
property来使用Qt的对话框:
fontDialog->setOption(QFontDialog::DontUseNativeDialog)

对于下划线、删除线和其他与字体相关的属性,您可以通过API访问它们,例如,
QFont::underline()