イベント keyDown を使用して、リッチ テキスト エディターにタブ キー機能を追加しようとしています。明確にするために、タブキーでは、コントロールを同じテキストボックスに残し、「\ t」スペースを先に置き、次のオブジェクトにスキップしないようにする必要があります。私が試した次のコードは、textArea では完全に機能しますが、RichTextEditor では機能しません。何か不足していますか?
<mx:RichTextEditor width="90%"
height="274"
id="richTextArea"
htmlText="{chapterContent}" keyDown="onTabPress(event);"/>
キーボードのタブ キーは、次に示すようにスクリプト レベルで処理されます。
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;
}
}
すべての助けをありがとう。