Flex中通过isPopUp属性创建一个不可拖动TitleWindow的例子
By Minidxer | August 17, 2008
在前面的Flex中如何利用mouseDown与stopImmediatePropagation事件创建可拖动(draggable)与不可拖动(undraggable)对话框的例子,我们了解了如何创建一个不可拖动的对话框。接下来的例子演示了Flex中如何通过isPopUp属性,创建一个不可拖动TitleWindow。
让我们先来看一下Demo(可以右键View Source或点击这里察看源代码):
下面是完整代码(或点击这里察看):
Download: main.mxml
- <?xml version="1.0" encoding="utf-8"?>
- <mx:Application name="PopUpManager_TitleWindow_isPopUp_test"
- xmlns:mx="http://www.adobe.com/2006/mxml"
- layout="vertical"
- verticalAlign="middle"
- backgroundColor="white">
- <mx:Script>
- <![CDATA[
- import mx.containers.TitleWindow;
- import mx.managers.PopUpManager;
- private var titleWin:MyTitleWin;
- private function launch():void {
- titleWin = PopUpManager.createPopUp(this, MyTitleWin, true) as MyTitleWin;
- PopUpManager.centerPopUp(titleWin);
- }
- ]]>
- </mx:Script>
- <mx:ApplicationControlBar dock="true">
- <mx:Button id="btn"
- label="Launch TitleWindow PopUp"
- click="launch();" />
- </mx:ApplicationControlBar>
- </mx:Application>
下面是MyTitleWin.mxml的代码:
Download: MyTitleWin.mxml
- <?xml version="1.0" encoding="utf-8"?>
- <mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml"
- layout="absolute"
- showCloseButton="true"
- title="TitleWindow"
- width="300"
- height="200"
- close="titleWin_close(event);">
- <mx:Script>
- <![CDATA[
- import mx.core.IFlexDisplayObject;
- import mx.events.CloseEvent;
- import mx.managers.PopUpManager;
- private function titleWin_close(evt:CloseEvent):void {
- PopUpManager.removePopUp(evt.target as IFlexDisplayObject);
- }
- private function checkBox_change(evt:Event):void {
- this.isPopUp = checkBox.selected;
- }
- ]]>
- </mx:Script>
- <mx:Label text="Drag this window"
- horizontalCenter="0"
- verticalCenter="0" />
- <mx:ControlBar>
- <mx:CheckBox id="checkBox"
- label="isPopUp:"
- labelPlacement="left"
- selected="true"
- change="checkBox_change(event);" />
- </mx:ControlBar>
- </mx:TitleWindow>
代码:Peter deHaan 翻译/整理/编译:中文Flex例子
Topics:
Flex, 网络资源 |
No Comments » |
1,182 views
Tags: isPopUp, PopUpManager, TitleWindow