在Flex中推断是否在组件之外单击的技巧
在Flex中推断是否在组件之外单击的技巧
昨天在做Flex开发的时候。遇到了这样一种操作,之前也遇到过。那时的办法不是非常好,今天又碰上了类似的问题,先看一张图吧!
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbG9uZ3l1aG9tZQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
这是系统界面大概的样子,如今的情况是。红色区域是一个窗体、页面、组件这种,须要在这个组件之外的地方单击就隐藏这个组件。曾经的想法非常easy,就是通过坐标推断,可是如今这个红色的区域的结构比較复杂,所以不知道有什么样的方式能够解决,后来遇到了一个网友,给了我一段代码,我认为还不错,我认为算是技巧性的东西吧。所以分享一下:
首先,在黑色的区域监听单击事件,然后在单击事件的处理函数中通过contains方法推断。代码例如以下所看到的:
public functionclickHandler(event:MouseEvent):void
{
if(!红色区域.contains(event.target asDisplayObject) && !绿色区域.contains(event.target as DisplayObject))
{
红色区域.visible = false;
}
}
这段代码,我觉得还是比較一种好的解决方式。最開始的想法是通过坐标来推断,然后又冒出了一个想法就是在红色区域上监听鼠标离开。在离开的处理函数中监听单击的事件,可是这样的方法好像不好使。
于是问了一下网友,就知道了这样的方法。
这里另一个小插曲:我的qq头像是路飞的,非常巧合的是帮助我解决这个问题的是一个索隆头像的网友,解决完问题之后,他还叫了我一声船长。非常有趣啊!
在Flex中推断是否在组件之外单击的技巧的更多相关文章
- Flex中设置Camera的视频清晰质量的最佳配合
今天需要设置Flex中的Camera组件的一些属性,后来发现清晰度不是很高,于是捣鼓了上午半天,设置了很多的参数,竟然发现手册上就是有现成的一些设置方法,郁闷!不过我还是专门设置了几个有用和必要的属性 ...
- Flex中escape/encodeURI/encodeURIComponent的区别
Flex中提供了三种转码函数,各有各的区别, escape,encodeURI,encodeURIComponent 这三个函数不仅在flex中有道运用在javascript中同样的含义 ,今天我仔细 ...
- Flex中的FusionCharts 2D饼图
1.设计思路 (1)FusionCharts中有Flex组件文件FusionCharts.swc,这样可以让FusionCharts用Flex展示出来: (2)利用xmlns:components=& ...
- Flex中TitleWindow传值
Flex中TitleWindow传值 1.设计思路 (1)新建一个DataGrid,在其中最后一列加入三个按钮:新增.修改和删除: (2)点击新增按钮,可以将表格新增一行: (3)单击"修改 ...
- Flex中容器的完全隐藏
在html中,但我们设置某个dom元素的display属性为none时,dom元素不可见且其占用空间从dom树上隐藏,而在Flex中,但我们把某个组件的visible属性visible设为false的 ...
- 【转】flex中的labelFunction(combox和dataGrid)
Flex中,对于显示一个字段,只需要指定对应字段属性给labelField即可,当需要上述所需要的功能的时候就得做个转换了,在Flex的基于List的组件都有一个labelFunction方法能很简单 ...
- 如何在个人博客引擎 Hexo 中添加 Swiftype 搜索组件
在您现在看到的我的博客站点,后台使用的是 Hexo 作为博客引擎,但是默认集成的搜索组件是进行 form 提交到 Google 进行搜索的,为了更好地体验,本文介绍如何在 Hexo 博客中集成 Swi ...
- 一个Angular模块中可以声明哪些组件?
一个Angular模块中可以声明哪些组件? (1) controller 控制器 (2) directive 指令 (3) function ...
- C#操作word或excel及水晶报表,检索 COM 类工厂中 CLSID 为 {} 的组件时失败,原因是出现以下错误: 80070005
解决办法一:<转自http://www.cnblogs.com/Sue_/articles/2123372.html> 具体解决方法如下: 1:在服务器上安装office的Excel软件. ...
随机推荐
- python 3 ---购物车练习
# -*- coding:utf-8 -*-#Author Chen #定义商品列表List_of_commodities = [ ('Iphone',6888), ('Mac Pro',12888) ...
- 如何让只支持IE浏览器的jsp转为可以支持chrome
如果你的项目只能使用IE浏览器打开,你想让其支持chrome的话,可以试一下下面的代码哦: function showLayerDialog(url,paramFuction){ top.layer. ...
- 代码重构:用工厂+策略模式优化冗余的if else代码块
最近在工作中优化了一段冗余的if else代码块,感觉对设计模式的理解和运用很有帮助,所以分享出来.鉴于原代码会涉及到公司的隐私,因此就不贴出来了.下面以更加通俗易懂的案例来解析. 假如写一个针对员工 ...
- [转载] 谷歌技术"三宝"之BigTable
转载自http://blog.csdn.net/opennaive/article/details/7532589 2006年的OSDI有两篇google的论文,分别是BigTable和Chubby. ...
- ajax异步传送数据的方法
1, 此方法为ajax异步发送后台数据的方法 var payment_id=$(this).attr("name"); alert(payment_id); $('.label') ...
- bootstrap导航栏.nav与.navbar区别
刚刚看了bootstrap的导航栏,发现有点弄混了,现在来整理一下: 一.简单的ul,li组成的导航: <ul class="nav nav-pills justify-content ...
- jmockit学习总结
mock类型和实例 从依赖的测试代码调用的方法和构造函数是mock(模拟)的目标. Mocking提供了我们需要的机制,以便将被测试的代码与(一些)依赖关系隔离开来.我们通过声明适当的模拟字段和/或模 ...
- unique & lower_bound C++
原来C++也有unique和lower_bound,只需头文件iostream unique unique可以对数组进行相邻元素的"去重",实现效果是把所有不重复的元素按顺序放在数 ...
- A computer hardware platform abstraction - part.1
intro Nowdays every electronic computer is based on Boole Algebra and Sequential Logic,So my post w ...
- Html5如何自学 只需这几步
Html5在整个行业卷起了一场大潮流,好多人都,但是很多人都不知道该怎么学习Html5,不知道Html5该如何自学?不知道Html5开发多久才会学会?接下来将从以下几点内容详细讲述. 第一,很多人建议 ...