TitleWindow作為Flex中的一個彈窗組件,在項目中涉及到非常多,並且要根據需求修改它的樣式以及功能。TitleWindow有它自帶的關閉按鈕,但是有時為了統一樣式,需要將關閉按鈕去掉或隱藏,該如何去掉TitleWindow自帶的關閉按鈕,具體實現如下:
工具/原料
Flash Builder4.0
Firefox
方法/步驟
不管對於什麼Flex項目,首先需要一個Flex應用程序
新建一個以TitleWindow命名的Flex應用程序,如下圖所示:
TitleWindow作為一個彈窗,需要新建一個組件
新建一個Flex組件WinDrag,繼承TitleWindow
如下圖所示:
一個Flex應用程序和Flex組件,需要一個按鈕觸發事件,點擊按鈕彈出窗口
如下圖所示:
在彈窗組件中,新建一個表格DataGrid,並聲明一個ArrayCollection作為表格的數據源
[Bindable]
private var dataGridArray:ArrayCollection = new ArrayCollection([
{name:"張三丰",age:"25",sex:"男",addr:"湖北省武漢市"},
{name:"李思思",age:"20",sex:"女",addr:"湖南省長沙市"},
{name:"吳雪麗",age:"24",sex:"女",addr:"廣東省深圳市"},
{name:"",age:"",sex:"",addr:""},
{name:"",age:"",sex:"",addr:""}
]);
如下圖所示:
在彈窗中添加表格代碼,綁定數據源dataGridArray
如下圖所示:
在應用程序中,彈窗按鈕只給了點擊事件,未對事件做任何處理
現在,需要將彈窗綁定到事件中
/**
* 點擊事件
*/
protected function clickHandler(event:MouseEvent):void
{
var winDrag:WinDrag = WinDrag(PopUpManager.createPopUp(this,WinDrag,true));
PopUpManager.centerPopUp(winDrag);
}
如下圖所示:
在Flash Builder4.0中,直接運行Flex應用程序
啟動後,會在瀏覽器中看到一個彈窗按鈕,單擊按鈕,會彈出一個帶有表格的窗口,這時的窗口還有關閉按鈕
現在要做的是,該如何去掉關閉按鈕
在彈窗按鈕單擊事件中,添加下面兩段代碼
winDrag.titleDisplay.parent.visible = false;
winDrag.titleDisplay.parent.height = 0;
如下圖所示:
再次啟動應用程序,查看瀏覽器,這時關閉按鈕去掉了
如下圖所示:
注意事項
注意表格中數據源語法以及綁定數據源的事項
去掉TitleWindow的關閉按鈕,需要根據需求來,合理利用其屬性和方法