Mar 25
下面的例子演示了如何通过internal命名空间的closeButton属性,显示,隐藏Flex的TitleWindow容器关闭按钮(close button)。
需要注意的是:和Flex的Alert消息框中设置icon图标的例子一样,由于例子中用到了mx_internal命名空间(namespace),无法保证在后续版本的Flex SDK中都可以正常工作,使用的时候自己要斟酌一下。
让我们先来看一下Demo(可以右键View Source或点击这里察看源代码)
Download: main.mxml
- <?xml version="1.0" encoding="utf-8"?>
- <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
- layout="vertical"
- verticalAlign="middle"
- backgroundColor="white">
- <mx:Script>
- <![CDATA[
- import mx.events.CloseEvent;
- import mx.controls.Button;
- private function checkBox_change(evt:Event):void {
- var btn:Button = titleWindow.mx_internal::closeButton;
- btn.enabled = checkBox.selected;
- }
- private function titleWindow_close(evt:CloseEvent):void {
- arrColl.addItem({type:evt.type, time:getTimer()});
- }
- ]]>
- </mx:Script>
- <mx:ArrayCollection id="arrColl" />
- <mx:ApplicationControlBar dock="true">
- <mx:CheckBox id="checkBox"
- label="closeButton enabled:"
- selected="true"
- change="checkBox_change(event);" />
- </mx:ApplicationControlBar>
- <mx:TitleWindow id="titleWindow"
- showCloseButton="true"
- width="100%"
- close="titleWindow_close(event);">
- <mx:DataGrid id="dataGrid"
- dataProvider="{arrColl}"
- width="100%"
- rowCount="6">
- <mx:columns>
- <mx:DataGridColumn dataField="type" />
- <mx:DataGridColumn dataField="time" />
- </mx:columns>
- </mx:DataGrid>
- </mx:TitleWindow>
- </mx:Application>
原文作者:Peter deHaan 翻译:minidxer
