c# – 如何对字符串中的位置执行命中测试

c# – 如何对字符串中的位置执行命中测试,第1张

概述我正在使用Graphics.DrawString写出一个字符串,并且需要在给定鼠标位置的字符串中获取char索引. 看起来这应该是非常直接的,但我真的很难找到一种有效的方法. 我找到了e.Graphics.MeasureString,它返回了它设法写入的字符数,但它有一些issues. 我目前唯一的工作方法是测量a,然后是ab,然后是abc,直到我超过x位置,但这是一个可怕的解决方案…… 您可以在 我正在使用Graphics.DrawString写出一个字符串,并且需要在给定鼠标位置的字符串中获取char索引.

看起来这应该是非常直接的,但我真的很难找到一种有效的方法.

我找到了e.Graphics.MeasureString,它返回了它设法写入的字符数,但它有一些issues.

我目前唯一的工作方法是测量a,然后是ab,然后是abc,直到我超过x位置,但这是一个可怕的解决方案……

解决方法 您可以在编写时计算占用字符串中每个字符的矩形坐标.之后,您可以扫描此列表,以查看鼠标坐标是否在此矩形内. 总结

以上是内存溢出为你收集整理的c# – 如何对字符串中的位置执行命中测试全部内容,希望文章能够帮你解决c# – 如何对字符串中的位置执行命中测试所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1227132.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-05
下一篇2022-06-05

发表评论

登录后才能评论

评论列表(0条)

    保存