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