我试图在使用事件keyDown的富文本编辑器中添加Tab键功能。只需要清楚,在标签键上,我需要将控件保留在前面带有'\ t'空格的同一个文本框中,而不是跳到下一个对象。我尝试的下面的代码完全适用于textArea,但不适用于RichTextEditor。我错过了什么吗?在富文本编辑器中添加Tab键功能(Flex 3)
height="274"
id="richTextArea"
htmlText="{chapterContent}" keyDown="onTabPress(event);"/>
键盘tab键然后在该脚本级进行处理,如图所示。
private function onTabPress(eventkey:KeyboardEvent):void
{
switch(eventkey.keyCode)
{
case Keyboard.TAB:
var indexBegin:int = eventkey.currentTarget.selectionBeginIndex;
var range:TextRange = new TextRange(eventkey.currentTarget as UIComponent,false,indexBegin,indexBegin);
range.text = "\t";
var indexNext:int = eventkey.currentTarget.selectionBeginIndex+range.text.length;
eventkey.currentTarget.setSelection(indexNext, indexNext);
focusManager.moveFocus(FocusRequestDirection.BACKWARD);
break;
}
}
感谢您的帮助。
+0
我知道RTE由一个控制和文本区域。我如何确保keyDown侦听器仅附加到textArea。道歉,如果我听起来业余。 –
+0
你尝试过'eventKey.stopImmediatePropagation()'吗? –