QString str1 = QString("<font color=black>%1").arg(QString::fromWCharArray(L"字符串1");
QString str2 = QString("<font color=blue>%1").arg(QString::fromWCharArray(L"字符串2"))
......
QString str = str1 + str2 + str3 + .......
通过上述设置就可以了,如果我们还想在字符串中间换行,此时加上"\n"是没有效果的,因为我们在用html的格式来设置字符串的样式。我们可以通过添加<br>就可以实现换行,如下:
QString strTemp = QString("<br><font color=red >%1").arg(QString::fromWCharArray(L"字符串"))//与上一行换行
Qt改变界面文字有很多方法(下面以Label控件为例):
1.通过Qt Creater:
拖一个Label到窗体上,对着Label右键->改变多信息文本...,里面就可以修改Label的内容、颜色、字体样式等等。
2.通过代码:
QLabel *label = new QLabel("Hello World!") //新建一个显示"Hello World"的Label//使用setPalette()方法改变颜色
QPalette pt
pt.setColor(QPalette::WindowText, Qt::red) //设置为红色
label->setPalette(pt)
//使用setFont()方法改变字体样式
QFont font("Microsoft YaHei", 12,75) //设置为微软雅黑,字体12号,加粗
/*常见权重(第三个参数):
QFont::Light - 25 高亮
QFont::Normal - 50 正常
QFont::DemiBold - 63 半粗体
QFont::Bold - 75 粗体
QFont::Black - 87 黑体*/
label->setFont(font)
//使用样式表改变颜色
label->setStyleSheet("color:blue") //设置为蓝色
//使用简单的HTML样式改变颜色和样式
QLabel *label2 = new QLabel("<h2><i>Hello</i>"
"<font color=red>World!</font></h2>")
参考资料:CSDN 《C++ GUI Qt 4编程》
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)