• 【实战项目】【FLEX】#900 实现拖控件功能


    一、功能说明:拖控件的功能(类似FLEX,VS 里面的拖控件)。

    提示:大家对事件的注册和派发的说法可能不一样。因为在FLEX中和在Java中,叫法有的区别。但是本质是一样的。

    注册事件  == 设置监听事件    ||       派发事件 == 触发事件  ,也有人叫 “进行广播”

               大家知道什么意思就好。

     

    说明:

    1、Application页面(放置控件列表,页面容器,属性面板这三个模块的Application页面)[PS:以下简称:主页面 ]    

        1.1  主页面加载 左、中、右 这三个模块            -->  模块加载技术  ==>暂无教程

    2、控件列表模块

        2.1  请求服务端数据(这边使用VS)  -->  请求服务端数据(UrlLoader)  ==> 【教程】【FLEX】#002 请求服务端数据(UrlLoader)

        2.2  处理服务端返回的数据(生成控件列表,这里使用Tree控件,直接把传回来的JSON对象复制给Tree)

        2.3  设置Tree控件的拖动       --> 控件拖放技术 ==> 【教程】【FLEX】#005 拖动

    3、控件容器

        3.1  注册控件列表的拖动事件    -->自定义事件的创建、注册,与派发技术,模块之间通讯技术    ==>  【教程】【FLEX】#003 自定义事件、模块间通讯

        3.2  处理拖动的事件,生成控件,派发事件初始化属性面板事件)    

        3.3  控件在控件容器的拖动,和控件大小的改变,派发  控件改变事件   -->控件位置、大小改变技术

        3.4  注册属性面板,属性值改变派发的事件(改变属性值,控件跟着改变,eg:改变width这个属性,控件的也要跟着改变)

    4、属性面板

        4.1  注册控件容器里面,控件生成之后派发的事件(初始化属性面板事件)     -->反射机制   ==> 【教程】【FLEX】#004 反射机制

    4.2  事件处理方法(生成属性面板)

        4.3  为属性面板中的属性值(TextInput控件),注册CHANGE事件(在事件处理里面 派发属性值改变事件

        4.4  注册 控件改变事件,并进行处理(改变属性面板中,对应属性的属性值)


    二、该功能用到的技术:

    1、模块加载 

    2、请求服务端数据 

    3、拖动

    4、自定义事件(创建,注册事件,派发事件)

    5、控件的位置、大小改变算法

    6、反射机制


    三、整体思路简单流图:

    clipboard

  • 相关阅读:
    用Web标准进行开发[转]
    下载文件时不要全部读入内存(C#)
    ManyToMany
    笔试题:十三 三次 与众不同的那个
    Hibernate<Session>与Jdbc<Connection>
    一个Hibernate程序的配置过程
    Hibernate 配置多个数据库 多个SessionFactory
    Tomcat5.5配置多域名绑定和虚拟目录
    Spring加载配置文件的3种方法
    Java IO流
  • 原文地址:https://www.cnblogs.com/zhongxia/p/4190137.html
Copyright © 2020-2023  润新知