`
ycy303
  • 浏览: 195641 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Flex 3 cookbook翻译: 2.13 为弹出窗口创建自定义边框

    博客分类:
  • flex
阅读更多

 

2.13 为弹出窗口创建自定义边框

2.13.1 问题

你想为弹出窗口定义边框,让它显示一个标记,来指出是哪个控件触发了这个窗口。

2.13.2 解答

创建 PanelSkin 的子类并覆盖 updateDisplayList 方法,画出标记箭头。并把这个新的 skin 作为弹出窗口的 borderSkin.

2.13.3 讨论

 

以下是基于 2.12 节的。要修改 CustomPopUp 组件。要自定义窗口边框,就要设置 CustomPopUpd borderSkin 样式为一个名为 CustomPanelSkin 的自定义类。

 

<mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml"
    layout="vertical"
    width="300" height="50"
    styleName="customPopUp"
    showCloseButton="true"
    close="handleClose(event)"
    borderSkin="CustomPanelSkin"
    initialize="initPopUp()">

    <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);
            }

            private function initPopUp():void {
                this.isPopUp = false;
            }
        ]]>
    </mx:Script>
</mx:TitleWindow>

 

 

CustomPanelSkin 类的代码如下。注意设置 TitleWindow isPopUp 属性为 false ,以避免用户能拖动弹出框。

 

 

package
{
    import flash.display.Graphics;

    import mx.skins.halo.PanelSkin;

    public class CustomPanelSkin extends PanelSkin
    {
        override protected function updateDisplayList(w:Number, h:Number):void {
            super.updateDisplayList(w,h);

            var gfx:Graphics = this.graphics;
            gfx.beginFill(this.getStyle("borderColor"),
                            this.getStyle("borderAlpha"));
            gfx.moveTo(this.getStyle("cornerRadius"),0);
            gfx.lineTo(15,-10);
            gfx.lineTo(25,0);
        }
    }
}

 

 

这个简单的类扩展了 PanelSkin 类, PanelSkin 类是 TitleWindow 边框的默认皮肤。在被覆盖的 updateDisplayList 方法里,添加了在 CustomPopUp 控件左上角画一个标记箭头的代码。

 

  • 大小: 6.2 KB
分享到:
评论

相关推荐

    Flex 3 Cookbook简体中文版最新推荐常青

    Flex 3 Cookbook 简体中文版是一本专注于Flex 3技术的实用指南,由翻译协作组精心编译并免费传播。这本书旨在帮助开发者深入理解和应用Flex 3框架,包括ActionScript和MXML这两个核心组成部分。 ActionScript是Flex...

    Flex 3 Cookbook.rar

    6. **动画和效果**:Flex 3提供了强大的动画和视觉效果库,书中会教你如何创建动态效果,提升用户体验。 7. **测试和调试**:书里还包含了如何使用Flex Builder进行代码调试和性能优化,帮助开发者确保应用的稳定性...

    Flex3 CookBook 教程

    3. **组件库的使用**:Flex提供了一整套预定义的UI组件,如按钮、文本框、列表等,了解如何创建、自定义和组织这些组件以构建专业级的用户界面。 4. **数据绑定**:学习如何利用Flex的数据绑定机制,实时更新界面...

    flex3 cookbook.rar

    《Flex3 Cookbook》是针对Adobe Flex 3这一版本的开发指南,主要涵盖了使用Flex构建富互联网应用程序(RIA)的各种技术和策略。Flex是一个开源框架,它允许开发者使用MXML和ActionScript来创建交互式、高性能的Web...

    flex3 cookbook 英文版pdf

    《Flex3 Cookbook》一书由Joshua Noble...以上仅为《Flex3 Cookbook》中部分内容的概括,该书深入浅出地覆盖了Flex与ActionScript的核心技术和实践技巧,对于希望精通Flex框架的开发者而言,是一本不可或缺的参考书籍。

    Flex 3 Cookbook.Flex 3 Cookbook.Flex 3 Cookbook.Flex 3 Cookbook.Flex 3 Cookbook.

    Flex 3 Cookbook 是一本专注于Adobe Flex 3技术的实用指南,旨在帮助开发者深入理解和应用Flex 3框架。Flex 3 是一个用于构建富互联网应用程序(RIA)的开发平台,它结合了MXML和ActionScript 3.0,使得UI设计和编程...

    Flex 4 Cookbook 英文版( pdf 非影印版)

    《Flex 4 Cookbook》是一本由Joshua Noble、Todd Anderson、Garth Braithwaite、Marco Casario 和 Rich Tretola 联合编写的英文书籍,由著名的O'Reilly Media出版,专注于Flex 4技术的实用教程。本书旨在帮助读者...

    Flex 3 cookbook 2008

    Flex 3 Cookbook by Joshua Noble; Todd AndersonPublisher: O'ReillyPub Date: May 6, 2008 Print ISBN-13: 978-0-596-52985-7 Pages: 704 The best way to show off a powerful new technology is to demonstrate...

    Flex中文帮助+Flex3cookbook中文版

    6. **移动应用开发**:Flex 3也支持开发移动应用程序,这部分可能包含针对移动设备的优化方法。 总之,这个压缩包对于想要学习Flex和ActionScript 3.0的初学者来说是一份宝贵的资源。通过阅读中文帮助文档和实践...

    Flex 3 CookBook 简体中文

    《Flex 3 Cookbook 简体中文》是一本专为Flex开发者量身打造的技术参考书,旨在帮助读者深入理解和熟练运用Adobe Flex 3这一强大的富互联网应用(RIA)开发框架。这本书是众多Flex爱好者共同智慧的结晶,集实用性与...

    Flex 3 Cookbook.pdf

    1. 使用Flex Builder创建Flex项目:Flex Builder是基于Eclipse的集成开发环境,它提供了强大的编辑、调试和构建工具,使得创建Flex项目变得容易。 2. 创建组件:讲解如何用MXML定义自定义组件,以及如何在...

    flex3 Cookbook 中文版

    3. **组件库**:Flex 3包含大量预定义的UI组件,如按钮、文本框、列表、图表等,这些组件可直接使用,也可自定义扩展,满足不同应用场景的需求。 4. **数据绑定**:Flex 3支持数据绑定,允许开发者将界面元素与数据...

    Flex cookbook(中文版)+Flex入门到实践

    《Flex 3 Cookbook 中文版》可能包含实用的代码示例和解决常见问题的方法: 1. **代码片段和解决方案**:提供大量针对特定问题的代码示例,帮助开发者快速解决问题,提高开发效率。 2. **最佳实践**:分享一些经验...

    flex3 cookbook 源码 完整版

    《Flex3 Cookbook》是针对Adobe Flex 3这一版本的开发指南,它包含了丰富的代码示例和实践教程,帮助开发者深入理解和应用Flex技术。这个完整版的资源包括了源码、范例XML数据以及Bonus Chapter的代码,对于学习和...

    flex3 COOKBOOK

    《Flex 3 Cookbook》是一本专注于Adobe Flex 3开发的详细指南,由常青组织精心翻译,旨在为开发者提供实用的解决方案和技巧。Flex 3是Adobe开发的一个开放源码框架,用于构建富互联网应用程序(RIA),它允许开发者...

    Flex 4 Cookbook

    Flex 4 Cookbook

    Flex4 Cookbook

    ### Flex4 Cookbook 知识点概述 #### 一、书籍基本信息 - **书名**: Flex4 Cookbook - **作者**: Joshua Noble, Todd Anderson, Garth Braithwaite, Marco Casario, Rich Tretola - **出版社**: O'Reilly Media, In...

Global site tag (gtag.js) - Google Analytics