Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache flex 确定视图中当前有焦点的(自定义)组件_Apache Flex_Data Binding_Actionscript_Mobile_Mxml - Fatal编程技术网

Apache flex 确定视图中当前有焦点的(自定义)组件

Apache flex 确定视图中当前有焦点的(自定义)组件,apache-flex,data-binding,actionscript,mobile,mxml,Apache Flex,Data Binding,Actionscript,Mobile,Mxml,我目前正在构建一个Flex 4.5移动项目,其中包括几个视图和自定义编写的MXML组件,这些组件可以动态地合并到这些视图中。 如何确定当前有焦点的组件,即用户点击该组件时激活的组件? 其背景是主应用程序中的全局搜索功能。根据此搜索的结果,将设置自定义组件中的字段。考虑到我不希望视图中的所有组件都侦听搜索函数的结果,我必须检查哪个组件当前处于活动状态。 我正在尝试将所选对象(搜索函数的结果)绑定到活动组件 任何帮助都将不胜感激 干杯 您可以使用来确定当前有聚焦的组件。在概念上类似于这样: var

我目前正在构建一个Flex 4.5移动项目,其中包括几个视图和自定义编写的MXML组件,这些组件可以动态地合并到这些视图中。 如何确定当前有焦点的组件,即用户点击该组件时激活的组件? 其背景是主应用程序中的全局搜索功能。根据此搜索的结果,将设置自定义组件中的字段。考虑到我不希望视图中的所有组件都侦听搜索函数的结果,我必须检查哪个组件当前处于活动状态。 我正在尝试将所选对象(搜索函数的结果)绑定到活动组件

任何帮助都将不胜感激


干杯

您可以使用来确定当前有聚焦的组件。在概念上类似于这样:

var ComponentWithFocus : IFocusManagerComponent= FocusManager.getFocus();

其实解决办法很简单,;每个组件调用由单击事件调度的函数(适用于移动和桌面)。此函数检查已选择的组件(MouseEvent.currentTarget),并在每个组件中调用实际更改状态的stateChanger方法。感谢您的回复Jeffry,不幸的是focusManager不适合我的问题(或者至少我不知道如何)。鉴于我必须将其用于全局搜索功能,搜索字段始终是具有焦点的组件。因此,除非我完全是在黑暗中钓鱼,否则我会坚持我的MouseEvent方法,它实际上很好(目前为止)。我相信我的答案正确地回答了你的问题,即“如何确定当前哪个组件有焦点”。也许你问错了或不完整的问题。然而,如果你觉得你有正确的答案;你应该正式地回答你自己的问题并选择它。在MouseEvent中,currentTarget是分配事件侦听器的组件。这可能与专注无关。更多关于事件中target和currentTarget之间差异的信息:有时候,刚开始使用Flex;)时,很难准确定义您需要什么。但是是的,你完全正确,你回答的问题是正确的。感谢您提供有关此主题的详细信息。我必须承认,这会让人有点困惑。