在MFC CRicheditctrl中,如何获取角色占用的Reactangle

问题描述

在Windows OS中,在MFC CRichEditctrl中,PosFromChar()给出字符的左上角位置,如何获取字符的高度或该字符所占据的矩形?

解决方法

所以-您已经有了左上角。在下一个角色的左上角找到您的右上角。

现在为底部。您可以使用CRichEditCtrl::LineFromChar来获取行索引。然后使用CRichEditCtrl::LineIndex在下一行获取字符。该角色的顶部是您的底部。

如果控件中只有一行,则可以在递增垂直位置的同时重复调用cricheditctrl :: CharFromPos(),直到它将返回下一个字符。如果这是最后一个字符,则可以对前一个字符执行此操作。如果控件中只有一个字符-您可以临时添加另一个字符,获取坐标并删除它。