Flex 经验笔记二
- 向 Module 传递数据:
好像只能传递些像 整型,字符型等简单类型的数据,
也能传递像 json 这样的 Object 对象,但如果 Object 对象是从层的,其子级数据,好像也读取不到。
function Alert 过,可以传递,但使用只能单参数使用,比如:
public function tstFunc(par1, par2): void;
在 Module 页设置一个 Function 成员变理;
public var sucFunc:Function;
在父级页面中:
module.sucFunc = tstFunc;
再在 Module 页面中执行 : sucFunc(par1, par2);
就会发生错误,但是如果是单个参数的,就正常! - 使用 FlexGlobals.topLevelApplication
var app:Application = FlexGlobals.topLevelApplication as Application;
现在 Application 下有个 public 的方法 funcTest;
var tstFunc = FlexGlobals.topLevelApplication.funcTest as Function; tstFunc();
- 组件 bottom='0' 可使组件置底,可能需要其他的布局设置.
-
HBox与Canvas容器表现不太一样. Hbox addChild后,如果内部组件高度比Hbox大,可能出现界面溢出情况(无法嵌入HBox,内部组件不能设置高度)
但是Canvas好像不会这样。
- 在某些方面,mx组件表现似乎比spark还好点, 比如设置样式等。
- http://www.360doc.com/content/11/0630/16/3294720_130605401.shtml [flex预加载及Application初始化执行过程:]
- flex TextArea 换行处理 String.replace(/\r+/g, '');
- Alert.show 按钮显示 null的问题
必须要在 application 主程序.mxml 处理定义import mx.controls.Alert - flex 中 Array的concat方法,并不能马上形成新的array值
需要赋值.
arr = arr.concat(arr2); - flex 的拷贝或克隆.
第一方式:
var copyObj:Object = ObjectUtil.copy(theObj);
第二种叫做深度拷贝:
var qClassName:String = getQualifiedClassName(object).replace("::", ".");
这种方式在本地是可行的, 但如果通过BlazeDS传到java就会发生错误, 提示 相关类不存在, 运行eclipse console 就会提示 XXXX.xxClassName 不存在。
网上是这么写的,据说比较保险:
var objectType:Class = getDefinitionByName(qClassName) as Class; registerClassAlias(qClassName, objectType); var copier : ByteArray = new ByteArray(); copier.writeObject(object); copier.position = 0; return copier.readObject();
前面两种对于对象,或是对象中仅有包括简单属性的情况,才可能有效果。
如果有个类里,即包括简单的如果整型,字符串这样的类型 ,又包括像数组 Array,甚至是事件的类型 Event, 就需要自己写方法,对类中的各种类型数据进行赋值了。
如果这Array包含的是 这个 类的子集时,就需要使用递归操作了。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端