Flex 编译慢
1. 不要使用Automatically Build, 使用Ctrl+B快捷键手动编译.2. 关闭所有当前不用的Project, 最好只剩一个.
更改界面语言:
右键打开图标属性,在目标路径中加了“-clean -nl en_US”
如下所示:"D:\Program Files\Adobe\Adobe Flash Builder 4\FlashBuilder.exe" -clean -nl en_US
如果你想使用英文版本的Flash Builder 4 Beta,你只需要将Flash Builder 4 Beta 安装目录下的FlashBuilder.ini文件打开,替换 ZH_CN 参数,重启Flash Builder即可。(MACOS下FlashBuilder.ini文件比较隐蔽,在Applications/Adobe Flash Builder Beta/FlashBuilder.app/Contents/MacOS/路径下,记得用文件浏览方式打开.app文件)
-clean-nlZH_CN-vmargs-Xms512m-Xmx512m-XX:MaxPermSize=256m-XX:PermSize=64m-Djava.net.preferIPv4Stack=true.
支持以下语言:
de_DEfr_FRja_JPru_RUzh_CNen_US
ColorPicker
<s:Button
x="
597
" y="
118
" label="
Button
" baseColor="
{
col.selectedColor
}
"
/>
<mx:ColorPicker
id="
col
" x="
517
" y="
175
" selectedColor="
#916E6E
"
/>
ComboBox
<mx:ComboBox id=" comboBox "
dataProvider=
"
[The,Quick,Brown,Fox,Jumps,Over,The,Lazy,Dog]
"
symbolColor="
{
colorPicker.selectedColor
}
"
horizontalCenter="
0
" top="
60
"
selectedIndex
="
0
"
/>
================有点问题===========
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
<fx:Array
id="
arr
"
>
<fx:Object
dataField="
宋
" headerText="
宋体
"
/>
<fx:Object
dataField="
楷
" headerText="
楷体
"
/>
<fx:Object
dataField="
黑
" headerText="
黑体
"
/>
</fx:Array>
<s:ArrayList
id="
arr1
"
>
<fx:Object
dataField="
宋体
" headerText="
宋体
"
/>
<fx:Object
dataField="
楷体
" headerText="
楷体
"
/>
<fx:Object
dataField="
黑体
" headerText="
黑体
"
/>
</s:ArrayList>
</fx:Declarations>
<s:Panel
x="
448
" y="
159
" width="
250
" height="
200
"
>
<mx:ComboBox
x="
73
" y="
10
" dataProvider="
{
arr
}
" labelField="
headerText
" selectedIndex="
0
"
/>
<s:DropDownList
x="
73
" y="
50
" dataProvider="
{
arr1
}
" labelField="
headerText
" selectedIndex="
0
"
/>
</s:Panel>
1)DropDownList的DataProvider不能是Array类型的
2)DropDownList默认显示时与ComboBox不一样,需要手动指定 selectedIndex的值
2)DropDownList默认显示时与ComboBox不一样,需要手动指定 selectedIndex的值
给一个button或text添加链接
<fx:Script>
<![CDATA[
private
function
linkURL():
void
{
var
request:URLRequest =
new
URLRequest(
"http://www.renrenwei.com"
);
initApp();
navigateToURL(request,
"_blank"
);
}
private
function
initApp():
void
{
var
str:String =
"<a target='_blank' href='http://www.renrenwei.com'>aa</a>"
;
linkUrl.htmlText = str;
}
]]>
</fx:Script>
<s:Button
x="
237
" y="
7
" label="
按钮
" buttonMode="
true
" click="linkURL()"
/>
<mx:Text
text="
aa
" x ="
140
" y="
10
" id="
linkUrl
" fontSize="
13
" buttonMode="
true
"
/>
PopUpButton
==============有问题===============
<fx:Script>
<![CDATA[
[
Bindable]
private
var
menu:Menu;
private
function
init():
void
{
menu =
new
Menu();
menu.dataProvider = arr;
menu.width = 200;
}
]]>
</fx:Script>
<fx:Declarations>
<fx:Array
id="
arr
"
>
<fx:Object
label="
Donec sit amet dui nec pede aliquam auctor.
"
/>
<fx:Object
label="
Integer vestibulum sodales dui.
"
/>
<fx:Object
label="
Sed nonummy ligula et tortor.
"
/>
</fx:Array>
</fx:Declarations>
<mx:PopUpButton
x="
452
" y="
34
" initialize="init();" popUp="
{
menu
}
" label="
PopUpButton
"
/>
弹出窗口(flex 4 Air):
弹出对象 dd.mxml
<?xml version="1.0" encoding="utf-8"?><s:Groupxmlns:fx="http://ns.adobe.com/mxml/2009"xmlns:s="library://ns.adobe.com/flex/spark"xmlns:mx="library://ns.adobe.com/flex/halo"width="400" height="300"><fx:Script><![CDATA[import mx.managers.PopUpManager;]]></fx:Script><mx:Image x="0" y="0" source="../img/base_back.png" width="400" height="300"/><mx:Image x="81" y="84" source="img/open_menu.png"click="PopUpManager.removePopUp(this)"/><s:layout><s:BasicLayout/></s:layout></s:Group>
主程序 cc.mxml
<?xml version="1.0" encoding="utf-8"?>
<s:WindowedApplication
xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/halo"
width="800" height="600">
<fx:Script>
<![CDATA[
import mx.managers.PopUpManager;
public function pop():void{
var pop:dd = dd(PopUpManager.createPopUp(this,dd,true));
PopUpManager.centerPopUp(pop);
}
]]>
</fx:Script>
<s:Button x="215" y="159" label="Button" click="pop()"/>
</s:WindowedApplication>
◆下面详细说明一下createPopUp的这几个参数:
第一个参数是Flex弹出窗口的父窗体,这个相信大家都明白。第二个参数是Flex弹出窗口的类名,也就是组件的文件名,在Flex中一个MXML文件也对应一个类。PopUpManager是根据这个类来创建弹出对话框。第三个参数是模态标记。如果是true,就创建一个模态对话框;否则创建的就是一个非模态的对话框。PopUpManager还有一个参数,不过不常用,具体请参考帮助文档。
然后你就可以对弹出对话框操作了,想要移除就用removePopUp(pop)。另外,如果是非模态的,可能在点击程序其它部分的时候窗口就不见了,但是它并没有移除,怎么让它出来呢?这个时候就需要PopUpManager的另外一个方法:bringToFront(),这个方法可以把窗口放到最前。你可以控制,让程序第一次的时候是创建对话框,以后就是把窗口放到最前。
Flex 弹出窗口居中
PopUpManager.addPopUp( window, this, true );
PopUpManager.centerPopUp( window );// 下面两行是关键的,如果有多个几层弹出窗口的话使用上面的方法没法居中,必须手动设置窗口位置,// 当然这个只是居中于屏幕中间,如果你是想居中于上一级弹出窗口的中间的话,那就不能添加下面两行代码了window.x=Application.application.stage.stageWidth/2-window.width/2;window.y=Application.application.stage.stageHeight/2-window.height/2;//Flex4中需要下面方法window.x=FlexGlobals.topLevelApplication.stage.stageWidth/2-window.width/2;window.y=FlexGlobals.topLevelApplication.stage.stageHeight/2-window.height/2;
弹出对话框:
<?xml version="1.0" encoding="utf-8"?>
<s:WindowedApplication
xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/halo"
width="800" height="600">
<fx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.events.CloseEvent;
public function lala(eventObj:CloseEvent):void{
if(eventObj.detail==Alert.OK){
myText.text = myInput.text;
}
}
]]>
</fx:Script>
<s:TextInput x="245" y="169" id="myInput" width="150" text=""/>
<s:TextInput x="265" y="189" id="myText"/>
<s:Button x="235" y="179" id="myButton" label="copy" click="Alert.show('copy','alert',Alert.OK|Alert.CANCEL,this,lala,null,Alert.OK);"/>
</s:WindowedApplication>
字符间距:
letterSpacing="20"
换行:
<mx:DataGridColumn headerText="会員 No." dataField="MemberCode"/>
DataGrid
flex 代码触发 button.click
在button中发送相应的事件
例如:
button.addEventListener(MouseEvent.CLICK,alert);
触发函数为
button.dispatchEvent(new MouseEvent(MouseEvent.CLICK));
ffff.as 中有
FLEX通过事件获取当前组件属性,在FLEX中,使用this只能获取当前整个窗体的对象,无法获取当前组件的属性,但可以通过currentTarget方法获取当前组件,如通过Label的双击事件获取Label的值。
[plain]
view plain
copy
- protected function onDoubleClick(event:MouseEvent):void
- {
- txt1.text=event.currentTarget.text;
- }