如何去掉Flex中TitleWindow的頭部關閉按鈕?

Tags: 按鈕, 頭部,

TitleWindow作為Flex中的一個彈窗組件,在項目中涉及到非常多,並且要根據需求修改它的樣式以及功能。TitleWindow有它自帶的關閉按鈕,但是有時為了統一樣式,需要將關閉按鈕去掉或隱藏,該如何去掉TitleWindow自帶的關閉按鈕,具體實現如下:

工具/原料

Flash Builder4.0

Firefox

方法/步驟

不管對於什麼Flex項目,首先需要一個Flex應用程序

新建一個以TitleWindow命名的Flex應用程序,如下圖所示:

如何去掉Flex中TitleWindow的頭部關閉按鈕

TitleWindow作為一個彈窗,需要新建一個組件

新建一個Flex組件WinDrag,繼承TitleWindow

如下圖所示:

如何去掉Flex中TitleWindow的頭部關閉按鈕

一個Flex應用程序和Flex組件,需要一個按鈕觸發事件,點擊按鈕彈出窗口

如下圖所示:

如何去掉Flex中TitleWindow的頭部關閉按鈕

在彈窗組件中,新建一個表格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:""}

]);

如下圖所示:

如何去掉Flex中TitleWindow的頭部關閉按鈕

在彈窗中添加表格代碼,綁定數據源dataGridArray

如下圖所示:

如何去掉Flex中TitleWindow的頭部關閉按鈕

在應用程序中,彈窗按鈕只給了點擊事件,未對事件做任何處理

現在,需要將彈窗綁定到事件中

/**

* 點擊事件

*/

protected function clickHandler(event:MouseEvent):void

{

var winDrag:WinDrag = WinDrag(PopUpManager.createPopUp(this,WinDrag,true));

PopUpManager.centerPopUp(winDrag);

}

如下圖所示:

如何去掉Flex中TitleWindow的頭部關閉按鈕

在Flash Builder4.0中,直接運行Flex應用程序

啟動後,會在瀏覽器中看到一個彈窗按鈕,單擊按鈕,會彈出一個帶有表格的窗口,這時的窗口還有關閉按鈕

如何去掉Flex中TitleWindow的頭部關閉按鈕

如何去掉Flex中TitleWindow的頭部關閉按鈕

現在要做的是,該如何去掉關閉按鈕

在彈窗按鈕單擊事件中,添加下面兩段代碼

winDrag.titleDisplay.parent.visible = false;

winDrag.titleDisplay.parent.height = 0;

如下圖所示:

如何去掉Flex中TitleWindow的頭部關閉按鈕

再次啟動應用程序,查看瀏覽器,這時關閉按鈕去掉了

如下圖所示:

如何去掉Flex中TitleWindow的頭部關閉按鈕

如何去掉Flex中TitleWindow的頭部關閉按鈕

注意事項

注意表格中數據源語法以及綁定數據源的事項

去掉TitleWindow的關閉按鈕,需要根據需求來,合理利用其屬性和方法

相關問題答案