我正在编写一个Qt应用程序,我想在QTextBrowser
中使用系统的默认字体。有没有办法查询默认的系统字体是什么,并在QTextBrowser
中设置相同的颜色?
以下代码段显示了我现在拥有的内容:
QString line;
QFont myfont ("Monospace");
myfont.setPixelSize(12);
myfont.setBold(true);
line.append("Hello!\n\n");
this->MessageBrowser->setTextColor(Qt::blue);
this->MessageBrowser->append(line);
this->MessageBrowser->setFont(myfont);
line.append("Hello Again!\n\n");
this->MessageBrowser->setTextColor(Qt::red);
this->MessageBrowser->append(line);
this->MessageBrowser->setFont(myfont);
感谢任何帮助。
非常感谢。
德文德拉
答案 0 :(得分:1)
找到答案。使用setStyleHint
函数,它将尝试找到与目标计算机上请求的字体最匹配的匹配项。
QString line;
QFont myfont ("Monospace");
myfont.setStyleHint(QFont::Monospace);
myfont.setPixelSize(12);
myfont.setBold(true);
line.append("Hello!\n\n");
this->MessageBrowser->setTextColor(Qt::blue);
this->MessageBrowser->append(line);
this->MessageBrowser->setFont(myfont);
line.append("Hello Again!\n\n");
this->MessageBrowser->setTextColor(Qt::red);
this->MessageBrowser->append(line);
this->MessageBrowser->setFont(myfont);
this->MessageBrowser->moveCursor(QTextCursor::End);
虽然我仍然不确定这是否是完美的解决方案。
德文德拉