我需要限制自定义小部件setFont()
,使其仅接受固定宽度的字体。
但是,我找不到如何以编程方式定义特定是否QFont
是固定宽度的。有这种可能吗?
也许bool QFontInfo::fixedPitch()
是您正在寻找的功能:
void MyWidet::setFont ( const QFont& font )
{
QFontInfo fontInfo(font);
if(fontInfo.fixedPitch())
QWidget::setFont(font);
// Otherwise ignore..
}
添加YourWidget->setStylesheet("QWidget{font: 10pt "Ubuntu";}");
这样,您可以将小部件大小限制为 10pt 和 Ubuntu 类型的字体,除非您以编程方式在其他地方更改它。