Develop

describeType

public function describeType(value:*):XML

语言版本: ActionScript 3.0 生成描述 ActionScript 对象(命名为方法的参数)的 XML 对象。

如果 value 参数是类型的实例,则返回的 XML 对象包括该类型的所有实例属性,但不包括任何静态属性。可以在解析 XML 对象时检查此条件,方法是检查 标签的 isStatic 属性的值,该值在 value 参数是类型的实例时为 false。

要获取某个类型的静态属性,请为 value 参数传递该类型本身。返回的 XML 对象不仅仅包括类型的静态属性,而且还包括它的所有实例属性。实例属性嵌套在名为 的标签内,从而与静态属性区分开来。在这种情况下, 标签的 isStatic 属性为 true。

详情请参见http://help.adobe.com/zh_CN/AS3LCR/Flex_4.0/flash/utils/package.html#describeType%28%29


初始 OSMF 中几个简单对象

嗯,写这个只为了加深下,自己的印象,方便提醒自己。

这是个简单的播放,无任何的控制,首先了解几个常见的元素:

* MediaElement:一个声音、一张图片,一个视频,或者其他媒体资源。

* MediaPlayer:对所有媒体类型提供必要的互动支持。

* MediaContainer:基于Sprite类的容器,用以承装媒体对象。

* MediaFactory:判断要播放的类型,来创建不同的MediaElement 。


Adobe Flash Builder 4.0.1

7月初的一天,M童说他的Mac上已经升级为4.0.1,呵呵,我还以为Window上不会升级,还在琢磨着Adobo在搞什么,原来,我一直没有关注系统里的提示,4号,我终于没有无视提醒,升级了Flash Builder,还是有些小激动,不知道,升级了些什么,正式版出来后,感觉稳定多了。

Adobe Flash Builder 4 fixed issues

支持最新的Flash Player 10.1、Adobe AIR 2.0和Flex SDK 4.1,并解决了在4.0发行版中发现的多个问题。

在“New”菜单中新增加了“Flash Professional Project”、“MXML Item Renderer”和“MXML Skin”,呵呵。。有些意思。。


CatalogBook

感觉对于这个Book控件,我依旧头痛的很,自以为搞定了,可发现问题还是存着呢,也许是在改写过程中,一知半解产生的后果,自己的思路没有整理明白。

应该一点点耐着性子去解决。烦。


关于depth

某一天,我在Flex4中发现depth([depθ][dɛpθ])这个属性值,不明白什么作用,也懒于试,一直却好奇中…感觉自己保持着自己不爱钻研的优点…

幸运的是,懒人总是有懒人福,呵呵,今天我算是搞明白了,而且,有段程序,用这个属性值,控制起来方便多了,嘿嘿…

depth的作用是“确定容器内各项目的呈示顺序。Spark 容器根据项目的 depth 属性确定这些项目的顺序,具有最低深度的项目在后面,具有较高深度的项目在前面。具有相同深度值的项目按照添加到容器中的顺序显示。”

如果说Spark容器的话,那表示在Flex3应该没有这个属性值。就到这里了。


Flex中的拖拽

一.通DragManager管理拖拽事件

// 处理拖拽中的数据传递
var dragSource: DragSource = new DragSource();
dragSource.addData(event.currentTarget, "pageItems");

// 自定义拖拽图标
var dragImage : DragAndResizeLine = new DragAndResizeLine();
dragImage.width = IUIComponent(event.currentTarget).width;
dragImage.height = 14;

// 拖拽
DragManager.doDrag(event.currentTarget, dragSource, MouseEvent(event), dragImage);

====================
DragManager.doDrag(
dragInitiator:派发拖拽事件的目标对象
dragSource:拖拽中的数据源,用来传递数据。通过定义DragSource对象来设置数据源,该对象的方法 addData(obj, “name”) 可以添加数据。然后使用dataForFormat(“name”) 来获取数据,使用前用hasFormat(“name) 来判断是否存在该对象。
mouseEvent:鼠标事件对象,包含了拖拽事件开始时的鼠标信息
dragImage:可选,一个可视化的Flex 组件,用来代替目标对象的显示,将在拖拽过程中一直跟随鼠标。如果没有指定,默认会使用一个矩形来代替。
xOffset:x坐标位移量,默认0,表示dragImage 和 目标对象左端的距离
yOffset:y坐标位移量,默认0,表示dragImage 和 目标对象顶端的距离
imageAlpha:默认0.5,表示 dragImage 的透明度,0~1
allowMove:是否允许移动,默认true,实际上这个属性不影响动作
);
====================

二.拖拽操作中最少有两个对象:被拖动的对象、接收方的对象。
  被拖动的对象,可设置的事件有mouseDown:鼠标按下。mouseMove:鼠标移动。dragComplete:鼠标释放(判断是否拖放成功)。
  接收方的对象,可设置的事件为dragEnter:被拖动对象移动到接收范围时。dragOver:鼠标移动到接收方上。dragDrop:鼠标在接收方上松开。dragExit:被拖动对象被拖离接收方范围。
private function dragEnterHandler(event: DragEvent) : void {
// 判断当前拖入的对象,是否是想要接收的对象
if (event.dragSource.hasFormat("pageItems")) {
// 同意接收当前拖入的对象
DragManager.acceptDragDrop(event.currentTarget);
}
}


备受折磨于SDK

从Flash Build beta1到beta2改变了好些东东,因为对它有无限的期待,呵呵,我开始了beta2的跟随过程…

从自带的SDK到4.0.0.12589,应该是一个蛮有意思的改变,因为List用的比较多,所以感觉它也是一个总爱变化的类,在年后,下载了4.0.0.13875,依旧类的命名空间有些改变,主要是指mx类的,同时发现design模式对于Skin的支持很是不好,故而很是期待什么时候能出正式版本呢..或是比较好的SDK..

一路走来..感觉有些不容易..嘿嘿..


突然D7起不来

调试程序,报了N个错误,强制关了D7,再重新打开D7,等了一会儿,
提示“Borland license information was found,but is not valid for Delphi
You can not run Delphi without this information
Click the ‘Exit’ button to exit Delphi”

因为”$:\documents and Settings\当前用户\.borland”中的一个“registry.slm”文件被破坏,解决的办法就是删除该目录下的这个文件。

重新启动D7,OK


D7中的ServerSocket

D7中并没有默认安装TServerSocket及TClientSocket,所以须要自行上Delphi7\Bin目录中找到dclsockets70.bpl进行安装哦。



Copyright © 2009-2012 Porry Blog
Jarrah theme by Templates Next | Powered by WordPress