C# RichTextBox文本块选择

3
有没有人扩展.NET RichTextBox控件,使其能够通过“块选择”来选择文本?如果有的话,愿意分享你的代码吗?

在您的情况下,对“块选择”的澄清可能会得到更好的答案。 - Brad Bruce
好的。目前,当您使用鼠标选择文本时,它会逐行选择文本。使用块模式,您将能够按列选择文本...就像从控件中选择“矩形”文本一样。 - Lenard
但是RichTextBox可以在文本文件中的不同位置具有不同大小的字体。如果您选择第1行的第3-10列,那么第2行应该选择什么?第3-10列?还是与第1行的第3-10列的X、Y、宽度对齐的列?如果半个字符在边界内呢?它会被选中吗?这在RichTextBox控件中并不是一个简单明了的问题。 - scwagner
收到。我更多地是从字符=列的角度考虑的。在我的情况下,我使用的是固定间距字体,并且整个文档中的字体大小相同。当然,如果您在某些地方更改字体大小,选择文本时它不会看起来像一个完美的矩形,但在我的情况下永远不会发生这种情况。 - Lenard
嗨,Lenard,我在搜索相同的功能时发现了你的帖子。你找到解决方案了吗?谢谢,Bob - user191698
不,我没有这样做。我决定暂时不开发这个功能。我可能会看一下kek444建议的内容,但我没有时间(或者愿望)自己去解决它。话虽如此,如果我将来找到了什么东西,我会在这里分享的。 - Lenard
1个回答

0
据我所知,实现这个功能的唯一方法是使用API中的SendMessage,并使用EM_CHARFROMPOS
您需要进行一些矩形边框搜索/跟踪和实验,以找到高效的解决方案,但这是基础。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接