Is there a way to return a point for a string within a text box? I found a COM function GetTextExtentPoint that will return the length of a string, but I want to know the point where the string starts.
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
You're looking for the GetPositionFromCharIndex
method.
回答2:
First, figure out the index of the first character of the string.
int index = textBox1.Text.IndexOf(someString);
Then use GetPositionFromCharIndex.
Point stringPos = textBox1.GetPositionFromCharIndex(index);
(Code not tested, but something like this should work. Of course you will have to deal with the possibility of duplicate occurrences of your string in the textbox.)
回答3:
what comes to mi mind is to take a snapshot of both the form and text then do some fancy image comparing to find the starting point.. but for this you need to write/download a library that has theese comparing methods... thus becoming very complicated...
why do you need to do this?