主题:  请问如何知道文本框中的某个字符处于第几行

mysoho

职务:普通成员
等级:1
金币:0.0
发贴:18
#12003/7/16 18:28:09
请问如何知道文本框中的某个字符处于第几行。

如一个文本member如下,指定宽度,下面的文本自动换行。
“The most important of the Council's legal instruments in this field is the 1977 Nairobi Convention for the prevention, investigation and repression of Customs offences.
Such offences include all kinds of commercial fraud including the abuse of intellectual property rights, the illicit traffic of strictly controlled substances such as narcotic drugs, psychotropic substance and precursors, armaments, nuclear materials, toxic wastes, cultural property and protected animal and plant species.”

我能否知道其中某个单词如“strictly”在文本的第几行,怎么实现?或者我想知道第245个字符在哪行,请问各位高手如何判断?



D计划-混沌

职务:管理员
等级:6
金币:15.2
发贴:3528
#22003/7/16 23:09:03
如果memeber的行高固定
plines= charPosToLoc(member "text", 245).locv/行高+1



mysoho

职务:普通成员
等级:1
金币:0.0
发贴:18
#32003/7/17 9:40:45
多谢 54zq,最后我用了一个很烦的循环暂时解决,但效率远不如你的这一行代码。

-- engLineNum=Sprite(9).member.height/21
-- repeat with i=1 to engLineNum
-- tmpFirstChar=Sprite(9).member.locToCharPos(point(0,i*21))
-- if abs(range[2]-tmpFirstChar)<70 then
-- tLastCharInLine=i
-- exit repeat
-- end if
-- end repeat