首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Flash >

[Flash/Flex] 给一个TitleWindow增添按钮的方法

2012-10-25 
[Flash/Flex] 给一个TitleWindow添加按钮的方法资讯类型: 翻译来源页面: http://userflex.wordpress.com/2

[Flash/Flex] 给一个TitleWindow添加按钮的方法
资讯类型: 翻译
来源页面: http://userflex.wordpress.com/2011/05/05/add-titlewindow-buttons/
资讯原标题: How to Add Buttons to a TitleWindow
资讯原作者: Nick Schneble
翻译词数: 97 词
我的评论:小技巧,先收藏
对这篇文你有啥看法,跟贴说说吧!欢迎口水和板砖,哈哈。欢迎大家和我们一同分享更多资讯。
TitleWindow对象是伟大的,但如果在标题栏,你不想只有一个关闭按钮,那么你需要扩展组件并添加自己的功能。

下面是一个简单操作方法:

package{     import mx.containers.TitleWindow;     import mx.controls.Button;     import mx.controls.LinkButton;    public class CustomTitleWindow extends TitleWindow     {         private var helpButton : LinkButton;         private var _closeButton : Button;        public function CustomTitleWindow ()         {             title = "Custom TitleWindow";             showCloseButton = true;         }        private function get closeButton () : Button         {             if (! _closeButton)             {                 for (var i : int = 0; i < titleBar.numChildren; ++ i)                 {                     if (titleBar.getChildAt (i) is Button &&                         titleBar.getChildAt (i) != helpButton)                     {                         _closeButton = titleBar.getChildAt (i) as                             Button;                     }                 }             }            return _closeButton;         }        override protected function createChildren () : void         {             super.createChildren ();            if (! helpButton)             {                 helpButton = new LinkButton ();                 helpButton.label = "Help";                 helpButton.focusEnabled = false;                 helpButton.setStyle ("paddingTop", 4);                titleBar.addChild (helpButton);                 helpButton.owner = this;             }         }        override protected function layoutChrome (w : Number,             h : Number) : void         {             super.layoutChrome (w, h);            var width : Number =                 helpButton.getExplicitOrMeasuredWidth ();             var height : Number =                 helpButton.getExplicitOrMeasuredHeight ();            var x : Number = closeButton.x – width;             var y : Number = closeButton.y – Math.floor                 ((height – closeButton.height) * 0.50);            helpButton.setActualSize (width, height);             helpButton.move (x, y);         }    }}


正如你在上面看到的,所有你需要做的就是:扩展TitleWindow类,并重写createChildren()和layoutChrome()方法。 你先在标题栏添加按钮,然后再确定它们的尺寸和位置。

请记住,这个例子中并没有包括一个事件处理程序,所以如果你真的想让你的按钮做一些事情,你需要自己实现一个事件处理。

热点排行