我希望从文本字段中的单独行接收单独的点击事件,并且每次用户点击某一行时,我想突出显示它并发生事件。
理想情况下,我喜欢动态文本,而不必手动分开文本。使用htmlText属性是一个选项,但我不确定如何将clickEvents绑定到单独的元素。
我从哪里开始?
答案 0 :(得分:1)
没有为此准备好的解决方案。但你可以使用一些东西自己制作:
caretIndex
属性getLineIndexOfChar
检查当前插入位置的行是什么getLineOffset
和getLineLength
获取该行第一个和最后一个字符的位置setSelection
突出显示此行可能有一些更快捷,更简单的方法,但这是有效的:)
编辑:决定发布解决方案代码,因为我想知道它是如何工作的......如果让它保持未发布状态并让你这样做将是一种耻辱:)
field.addEventListener(MouseEvent.CLICK, onTfClicked);
function onTfClicked(e:MouseEvent):void {
trace (field.caretIndex);
var line:uint = field.getLineIndexOfChar(field.caretIndex);
var start:uint = field.getLineOffset(line);
var end:uint = start + field.getLineLength(line);
field.setSelection(start, end);
}