我有一個需要用paintEvent()繪製一些文本的程序。 我已經試過這樣:用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應該是這樣的:
一些大膽的文字:一些不加粗的文字。 (newLine)
一些粗體文本2:有些不粗體text2。 (newLine),並持續一段時間。
我遇到的問題是,爲QString不能在它的HTML代碼,使文本顯示,如:
< b>Some bold text:< /b> some not bold text. < b>Some bold text 2: < /b>
some not bold text2.\n
有沒有使用的paintEvent畫顯示文本的方式我需要它的方式?與QString(或QLabel什麼的)
我正在使用Qt4。
感謝您的幫助=)
謝謝@sjwarner,但是,我需要給它一個特定的位置以滿足它的需要被繪製我做了這個'document-> drawContents(&painter,QRect(QPoint.x(),QPoint)。y(),rect().width(),rect()。height()));'但它不顯示任何東西。 – user1486311 2012-07-31 16:54:13
@sjtaheri似乎讓你走上了正軌,所以我會離開你去的;-) – sjwarner 2012-08-01 09:37:59
謝謝! = D現在工作正常! – user1486311 2012-08-02 15:39:03