`

Flex学习记录(popup弹出窗口的显示和位置)

阅读更多
Flex 框架包含了一个PopUpManager 类,它包含了若干静态方法来管理穿件,放置,移除Flex
应用程序的顶级窗口。如下代码所示:
Code View:
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute">
<mx:Canvas horizontalCenter="0" verticalCenter="0">
	<mx:LinkButton label="Top" x="100" y="10" click="showDetail(event)"/>
	<mx:LinkButton label="Left" x="10" y="100" click="showDetail(event)"/>
	<mx:LinkButton label="Bottom" x="100" y="200" click="showDetail(event)"/>
	<mx:LinkButton label="Right" x="200" y="100" click="showDetail(event)"/>
	<mx:Canvas width="100" height="100" x="125" y="40" backgroundColor="#ffffff" rotation="45">
	</mx:Canvas>
</mx:Canvas>

<mx:Script>
	<![CDATA[
		import mx.managers.PopUpManager;
		private const POPUP_OFFSET:int = 10;
		
		private function showDetail(evt:MouseEvent):void {
			// 创建PopUp
			var popup:CustomPopUp = 
			CustomPopUp(PopUpManager.createPopUp(this, CustomPopUp , false));
			popup.message = "This is the detail for " + evt.target.label;
			// popup定位
			var pt:Point = new Point(0, 0);
			// 从组件内部坐标空间转换到全局坐标空间。
			pt = evt.target.localToGlobal(pt);
			popup.x = pt.x + POPUP_OFFSET;
			popup.y = pt.y + evt.target.height + POPUP_OFFSET;
		}
	]]>
</mx:Script>

</mx:Application>

在这个例子中,一系列的LinkButton 控件被创建并被绝对定位放置在Canvas 中。当用户点
击了一个LinkButton,一个弹出窗口会显示用来为用户显示详细信息。LinkButton 控件的
click 事件被连接到showDetail 方法上。showDetail 方法使用了PopUpManager 的createPopUp
方法来创建了一个自定义组件CustomPopUp 的实例。然后弹出窗口的message 属性被赋值
成需要被显示给用户的值。最后,弹出窗口被相对定位到发起初始请求的LinkButton。
LinkButton 左上角的(LinkButton 的坐标内,x=0,y=0),会被localToGlobal 方法从组件内
部坐标空间装换到全局坐标空间。这个转换方法在所有的显示元件和他们的子类都可用。
CustomPopUp 类代码如下所示:
Code View:
<mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical"
width="300" height="50"
styleName="customPopUp"
showCloseButton="true"
close="handleClose(event)"
mouseMove="aa(event)">
<!--popup的关闭触发事件必须写在自定义控件上 -->
<mx:Style>
.customPopUp {
header-height:2;
padding-left:5;
padding-right:5;
padding-top:5;
padding-bottom:5;
border-color:#000000;
border-alpha:.5;
border-thickness-left:5;
border-thickness-right:5;
border-thickness-bottom:5;
border-thickness-top:5;
background-color:#666666;
color:#ffffff;
}
</mx:Style>
<mx:Text width="100%" height="100%" text="{message}"/>
<mx:Script>
	<![CDATA[
		import mx.managers.PopUpManager;
		import mx.events.CloseEvent;
		[Bindable]
		public var message:String;
		private function handleClose(evt:CloseEvent):void {
			PopUpManager.removePopUp(this);
		}
		public function aa(evt:MouseEvent):void{
			PopUpManager.removePopUp(this);
		}
	]]>
</mx:Script>
</mx:TitleWindow>

CustomPopUp 类继承于TitleWindow 类,并且添加了一个Text 控件用来显示信息。当通过
PopUpManager 的removePopUp 方法来关闭弹出窗口时,TitleWindow 的close 事件被指向
到handleClose 方法。上面的代码还包含了自定义CustomPopUp 显示的CSS 风格。
分享到:
评论

相关推荐

    Flex 弹出窗口代码

    在Flex编程中,"弹出窗口代码"是一个常见的需求,特别是在设计用户交互界面时,我们经常需要实现点击按钮后打开一个新的窗口或者对话框来展示更多信息或进行特定操作。本篇将详细讲解如何在Flex中创建一个点击按钮后...

    flex 弹出窗口并居中显示

    综上所述,通过Flex布局,我们可以轻松实现弹出窗口的居中显示,同时结合其他CSS和JavaScript技巧,可以打造出功能完备、用户体验良好的弹出窗口。在实际项目中,还可以根据需求进行更复杂的定制和优化。

    flex 自动弹出窗口(右下角弹出,右上角弹出)

    本篇文章将详细探讨如何实现“自动弹出窗口”,特别是右下角和右上角弹出的窗口效果,以及与之相关的Flex技术。 首先,Flex是一种开源的开发框架,主要用于构建富互联网应用程序(RIA)。它基于ActionScript语言,...

    jQuery popup javascript 弹出窗口

    通过查看这个文件,可以学习到如何在实际项目中集成和使用jQuery弹出窗口。 总的来说,jQuery popup javascript弹出窗口的实现涉及到JavaScript编程、CSS样式设计、事件处理、浏览器兼容性优化等多个方面,是一个...

    popup 弹出框 js

    在网页设计和开发中,`popup`弹出框是一种常见的用户交互元素,它可以在用户进行特定操作或需要显示额外信息时出现。`popup`通常用于登录注册、消息提示、广告展示、确认操作等场景。本篇文章将深入探讨`popup`弹出...

    弹出窗口效果

    它们共同作用,使得弹出窗口不仅具有基本的显示功能,还能实现丰富的动态效果和视觉吸引力。 首先,jQuery 是一个轻量级的 JavaScript 库,它简化了 JavaScript 的语法,使开发者能更容易地处理DOM操作、事件处理、...

    Popup例子 实现弹出窗口的关闭

    "Popup例子 实现弹出窗口的关闭"这个主题聚焦于如何在WP应用中设计并实现一个功能完善的弹出窗口(Popup),并且允许用户通过点击弹出窗口外部的任何地方来关闭它。下面我们将详细探讨这一技术。 首先,Popup是...

    popup弹出框

    20. center (boolean, 可选):使弹出窗口的中间位置和鼠标位置重合。 21. above (boolean, 可选):使弹出窗口位于鼠标上侧(仅在设置了 height 属性时有效)。 22. below (boolean, 可选):使弹出窗口位于鼠标下侧。...

    点击按钮弹出窗口

    4. **显示弹出窗口**:在JavaScript事件处理函数中,显示刚才创建的弹出窗口。可以改变弹出窗口的CSS属性,例如`display`,使其可见: ```javascript document.getElementById('popup').style.display = 'block'; ...

    popup MSN 风格的消息弹出窗口

    Popup MSN风格的消息弹出窗口是一种常见的...总的来说,Popup MSN风格的消息弹出窗口的实现涉及客户端和服务器端的协同工作,利用了前端技术的动态性和后端语言的强大处理能力,为用户提供了一种直观且友好的交互体验。

    jquery自定义弹出窗口

    通过`fadeIn`和`fadeOut`动画,我们可以实现平滑的弹出和关闭效果。 ### 4. 使用自定义弹出窗口 现在可以像使用`window.open`一样调用`showPopup`函数,同时返回一个关闭函数,以便在需要时关闭弹出窗口: ```...

    arcgis 自定义弹出窗口

    在ArcGIS for Silverlight中,弹出窗口(Popup)通常用于显示地图上的图层或特征的详细信息。默认的弹出窗口虽然实用,但可能无法满足所有需求,因此自定义弹出窗口显得尤为重要。自定义弹出窗口允许开发者根据应用...

    百度的弹出窗口

    - 弹出窗口位置的计算,确保窗口在屏幕中央或其他指定位置显示。 - 弹出窗口的生命周期管理,如初始化、显示、隐藏和销毁。 - 提供一些辅助方法,如检查用户是否已关闭了浏览器的弹出窗口阻止功能,或者提供一个友好...

    js 自动弹出窗口 下来菜单效果

    紧接着,代码定义了一系列变量,用于控制弹出窗口的属性,如位置、大小和功能特性。例如: ``` Top=0; Left=0; Height=400; Width=600; ToolBar=0; Location=0; Directories=0; Status=0; MenuBar=0; Scroll=0; ...

    使用ArcGISAPI实现多个弹窗弹出;多个Popup窗体弹出,亲测可用。

    压缩文件"PopupExtended-master"很可能是一个示例项目,包含了实现多个Popup弹出的源代码和示例。通常,这样的项目会包括HTML、CSS和JavaScript文件,展示了如何配置和使用Popup,以及如何处理多Popup场景。 通过...

    17、Jquery支持自定义弹出窗口插件

    // 根据options调整弹出窗口的显示方式和位置 }); }; ``` 7. **增强用户体验**:除了基本功能,还可以增加其他特性,如防止页面滚动、阻止弹出窗口背后的点击事件,以及提供回调函数以便在弹出窗口打开和关闭时...

    jquery的一个弹出窗口

    3. **jQuery操作**:使用jQuery来控制弹出窗口的显示和隐藏。这通常涉及到`show()`和`hide()`方法。例如,当用户点击某个按钮时,弹出窗口显示;当用户关闭窗口或者点击背景时,窗口隐藏: ```javascript $...

    Flex--主程序与弹出窗口之间传递数据

    在Flex应用开发中,经常需要在主应用程序和弹出窗口(如对话框)之间交换数据,以便实现更加复杂的交互逻辑。 一、Flex中的组件层次结构 在Flex中,应用通常包含一个主程序(通常是Application类的实例),以及...

    ADF Table popup弹出编辑和添加

    在Oracle Application Development Framework (ADF) 中,`ADF Table` 是一个强大的组件,用于展示和管理数据。...通过阅读和理解这些代码,开发者可以深入学习ADF Table的弹出编辑和添加功能的实现细节。

    页面右下角弹出窗口

    3. **动画效果**:jQuery的`.show()`和`.hide()`方法可以实现元素的显示和隐藏,配合`.fadeIn()`、`.fadeOut()`等动画效果,可以使弹出窗口以平滑的方式出现和消失,提升用户体验。 4. **CSS布局**:为了将弹出窗口...

Global site tag (gtag.js) - Google Analytics