查看完整版本: [-- Qt5.15.2设置文本框默认字体失败 --]

QTCN开发网 -> Qt基础编程 -> Qt5.15.2设置文本框默认字体失败 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

apud 2021-04-07 22:37

Qt5.15.2设置文本框默认字体失败

QFont font("微软雅黑",26);
ui->textEdit->document()->setDefaultFont(font);

以上代码在Qt5.12.10及以下版本都是可以正常设置文本中的字体大小。升级到Qt5.15.2后设置就失效了,求解……

20091001753 2021-04-08 14:04
有可能是没有找到该字体,你先试试有没有:
  1. QFontDatabase database;
    for(auto family:database.families())qDebug()<<family;


apud 2021-04-09 09:05
20091001753:有可能是没有找到该字体,你先试试有没有:
QFontDatabase database;
for(auto family:database.families())qDebug()<<family;
 (2021-04-08 14:04) 

感谢提供思路,晚点我看看……

apud 2021-04-10 09:22
已找到原因
原代码:
  QFont font("微软雅黑",26);
  ui->textEdit->document()->setDefaultFont(font);
  ui->textEdit->setStyleSheet(QString("QTextEdit{background:%1;color:%2;}").arg(background).arg(color));
必须调换顺序,即:
  ui->textEdit->setStyleSheet(QString("QTextEdit{background:%1;color:%2;}").arg(background).arg(color));
  QFont font("微软雅黑",26);
  ui->textEdit->document()->setDefaultFont(font);

在Qt5.15.2中才能让字体设置生效,至少在Qt5.12.10这个版本中原代码是没有问题的。听说Qt5.15.2对高分屏这些做了优化,估计样式那块功能做了升级调整,这个属于正常的升级调整还是Qt5.15.2的BUG?有没有懂的人来指点一二。


查看完整版本: [-- Qt5.15.2设置文本框默认字体失败 --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled