我有一个程序需要用paintEvent() 绘制一些文本。我试过这个:
1. QPainter painter; // painter for the canvas
2. painter.drawText(QPoint location, QString canvasText);
在哪里
3. QString canvasText = variablesText.append("< b >");
4. variablesText.append((*fieldIter).second.c_str());
5. variablesText.append(":< /b > ");
6. variablesText.append(someValue);
7. variablesText.append("\n");
我需要格式化文本,canvasText 应该如下所示:
一些粗体文本:一些非粗体文本。(新队)
一些粗体文本 2:一些非粗体文本 2。(newLine) 并且持续了一段时间。
我遇到的问题是 QString 中不能包含 HTML 代码,因此文本显示如下:
< b>Some bold text:< /b> some not bold text. < b>Some bold text 2: < /b>
some not bold text2.\n
有没有办法在paintEvent中使用draw来以我需要的方式显示文本?带有 QString (或 QLabel 或其他东西)
我正在使用 Qt4。
感谢您的帮助 =)