当前位置: 代码迷 >> QT开发 >> qpainter的drawText函数解决方法
  详细解决方案

qpainter的drawText函数解决方法

热度:68   发布时间:2016-04-25 04:56:24.0
qpainter的drawText函数
(1)drawText ( const QPoint &, const QString &, int len = -1, TextDirection dir = Auto ) 
(2)drawText ( int x, int y, int w, int h, int flags, const QString &, int len = -1, QRect * br = 0, QTextParag ** internal = 0 ) 
我分别用这两个函数绘制同一段数据,使用GDB调试发现:虽然QPoint变量的值=(x,y),但是在界面上显示的效果却不一样。采用第一个函数绘制的数据在界面上的位置,与采用第二个函数绘制的位置相比,在纵轴上明显偏上。
不知道有没有人碰到过这种情况?另外,第一个函数的point变量和第二个函数的x,y分别代表什么意思?谢谢

------解决方案--------------------
估计是字符基准的问题,记得以前看过一篇文章,QPoint的drawText输出基准是字符垂直中心靠下一些的位置,
xywh是一个QRect,只要够大字符就不会跑到QRect的外边,xy就是字符的左上角。
尽量用一种方式输出文本吧。
  相关解决方案