我正在尝试创建一个类似文本输入的实时标记生成器,它包含块(形状/可视)组件(从UIComponent扩展)和虚拟TextInputs,在HGroup组件中排序。
即。输入表达式“x + 5”将如下所示:
[“x”block] [TextInput] [“+”block] [TextInput] [“5”block“] [TextInput]< - cursor is here
逻辑上我还想按向左或向右箭头键在Block和TextInputs之间移动焦点。
我覆盖了keyDownHandlers来执行此操作,但它无法正确聚焦。当我专注于Block组件时,按左右移动到正确的TextInput,但是当从TextInput移动到Block时,它会聚焦到父应用程序中的其他一些不相关的组件。
我尝试使用trace()语句,似乎焦点被设置了两次,如下所示:
1)如果最初聚焦TextInput,焦点会正确地转到侧面的Block组件,然后转到不相关的组件。
2)如果最初聚焦了一个块,则焦点转移到不相关的组件,然后聚焦在正确的TextInput上。
preventDefault()和stopImmediatePropagation()似乎没有停止关注转到不相关的组件。
任何帮助将不胜感激。谢谢!