为了扩展/实现具有多行的自定义小部件(如QTextEdit),我需要将小部件坐标转换为文本位置,将文本位置转换为坐标 .
例如 . 鼠标单击文本设置光标位置 . 例如,使用箭头键将改变需要绘制的光标位置 .
文本的绘制使用如下行:
painter.drawText(
textRect,
Qt::AlignLeft | Qt::AlignTop | Qt::TextWordWrap |Qt::TextJustificationForced,
text());
因此,如果文本大约是130个字符,并且光标位置在位置(例如)60 .
如何获取绘制此角色60的QPoint / QPointF?如果用户点击110x16的位置,那么这个角色是什么?
我查看了QFontMetrics和QPainter的函数,以及QTextCursor类 . 但我没有找到任何解决方案 .