回答
输出textWidth = -1表示,即
“[...],除非它是通过显式线路中断或一个 新段落强迫 文本不会被分成 多行”。
所以,如果你想获得的长度你QGraphicsTextItem
不能使用textWidth
,而是你需要的字符串的这个QGraphicsTextItem
内的实际长度。看看QGraphicsTextItem::toPlainText(),它返回一个QString。在该字符串上调用size()
。
int length = my_graphics_text_item.toPlainText().size()
现在,你必须在这个字符串中的字符数,可以实现调整大小功能,使您的矩形长,当有太多的字符。这是一种解决方法,但我希望它有助于解决您的问题。
非常感谢。 – 2011-02-01 09:03:56
另外我发现:qreal w = text.document() - > size()。width(); – 2011-02-01 09:04:28
您还可以创建一个QFontMetrics([QGraphicsTextItem的字体])实例并调用其宽度(QString)函数以像素为单位获取传递的字符串的宽度,如果在指定的fontFamily中绘制/ -size /重量。 只有在使用等宽字体时才能获得字符数。在所有其他情况下,这不是一个好主意。
我发现这篇文章通过停止对同一个问题。
我使用text->boundingRect().width()
来获取宽度。
也许它可以帮助任何人
- 1. 获取长度
- 2. 有效获取SOAPBody长度
- 3. 获取链表的长度
- 4. 获取字典的长度
- 5. 获取视频的长度
- 6. 获取动画长度 - Unity
- 7. Python获取内容长度
- 8. 获取几何长度
- 9. 获取IEnumerable的长度?
- 10. 获取长度提供
- 11. 获取NSStatusItem的长度
- 12. 获取HSSFWorkbook的长度
- 13. JSON数组获取长度
- 14. 在xslt中获取长度
- 15. 获取MP4码流长度
- 16. 获取相邻长度和角度相反的长度
- 17. 获取JSON的长度,角度
- 18. ArrayList:获取最长字符串的长度,获取字符串的平均长度
- 19. 在JS中获取字符串长度
- 20. 获取文本选择的长度AS3
- 21. 获取数组的长度JSON.Net
- 22. 获取哈希的长度,不空值
- 23. JQuery获取值或check_box_tag的长度
- 24. PASCAL:获取数组的长度[X]
- 25. 从id3获取章节长度 - 标签
- 26. C++获取LPCWSTR和LPVOID的长度
- 27. 如何获取数组的长度?
- 28. 获取UTF8中字符串的长度
- 29. 获取浮点数的长度(Objective-C)
- 30. 获取奇数长度回文
因此,-1作为默认值返回? – Exa 2011-02-01 08:31:25