我有一个字符串“3333333333333333dwefwefeuifhweufhweuhfewifwuhfuefhwifhweufw”很长,但是我要在一个矩形框QRECT里面显示出这个字符串,字符串可能被截断...要显示边框~~~
|-------------|
|3333333333333|
|33333dwefwefe|
|-------------|
有什么办法,请教~~
我现在是用QPainter绑定到了QPrinter上了,所以在QPainter上drawText就是在打印机上打印了~~~ 问个问题哈,我已经用了QPainter绑定到了QPrinter上了,还可以用QTextDocument绑定到QPinter上吗?或者说QTextDocument怎么转到QPainter?QPainter、QPrinter、QTextDocument 分工各不相同,本来就是配合使用的东西,而且按你的描述,使用QTextDocument是最自然的。lz可以去看看QPainter下的drawText重载的几个方法,比如像
void QPainter::drawText ( const QRect & rectangle, int flags, const QString & text, QRect * boundingRect = 0 );
void QPainter::drawText ( const QRectF & rectangle, const QString & text, const QTextOption & option = QTextOption() );
都支持在Text中添加'\n'换行符,如果不嫌麻烦的话,就在你的字符串中加换行符吧。
QString str = "abcdefg2134234234";
QPainter painter(this);
QRect rc(0, 0, 40, 40);
painter.drawText(rc, Qt::TextWrapAnywhere, str);