flex自定义组件
前期准备:
点击File菜单 -> New -> MXML Component,然后弹出一个对话框。
在对话框中输入组件名,选择此组件继承的类型,如:Canvas,DataGrid,ComboBox …… 等。
然后选择组件的大小,点击Finish即可。
关于组件继承的类型,假设Based on Canvas,那么组件的根元素即为mx:Canvas,此元素的含义为空白面板,那么设计人员可以任意在这个面板容器内放置任何东西,就像开发主程序一样。那么此组件类似一个容器。
如果Based on ComboBox,那么根元素即为mx:ComboBox,此元素的含义为下拉框,那么设计人员可以在下拉框的的内部任意定制内容或代码,那么此组件定制了一个下拉框。
例,登录组件:
制作组件:
首先按照上面的步骤新建一个组件,名为CLogin.mxml,Based on TitleWindow。TitleWindow元素代表有标题的窗口。
然后切换到Design视图,选择这个TitleWindow窗口,在属性框里编辑标题(Title属性),输入“用户登录”。
此时的代码大体如下:
<?xml version="1.0" encoding="utf-8"?>
<mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml" width="286" height="208" layout="absolute" title="用户登录">
</mx:TitleWindow>
然后我们加入Form控件并填入内容(FormItem),然后添加按钮以便提交,此时代码如下:
<mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml" width="286" height="208" layout="absolute" title="用户登录">
&nb
相关文档:
Frame Rate对Flex程序占用系统资源的分析,我们通过浏览器不同、Frame Rate不同的情况下,系统资源CPU的利用率比较。
Frame Rate的设置:
默认Frame传输速率是24,我们可以这样来设置,mxmlc -defaule-frame-rate 50 HelloWorld.mxml,通过这一语句的设置,
可以使Frame传输速率为5 ......
根据别人写了类,自己又增加了一部分,贴出来分享
/*获得两个日期之差 */
public static function getDateDiff(startDate:Date, endDate:Date):int
{
var diff:Number = (Number(endDate) - Number(startDate))/(3600000*24);
return diff;
}
/* 获得现在日期 */
public static function getDate() ......
mode有三种模式:ProgressBarMode.EVENT,ProgressBarMode.POLLED ,ProgressBarMode.MANUAL ,事件模式和轮询模式是最常用的模式。 在事件模式下,source 属性指定生成 progress 和 complete 事件的加载内容;在此模式下,应使用 UILoader 对象。 在轮询模式下,source 属性指定公开 bytes ......
上次说了直接把字体嵌入到flex程序中的方法,这次写一下将字体编译成swf后供其它flex程序加载来调用的方法。
首先,新建一个actionscript的project,取名为FlexFont,将字体文件放到src/font目录下,主程序为
FlexFont.as文件,内容如下:
package {
import flash.display.Sprite;
public class FlexFont extend ......