Flex中利用StyleManager类getColorName()和getColorNames()事件将颜色名称转化为颜色的数值的例子
By Minidxer | August 23, 2008
接下来的例子演示了Flex中利用StyleManager类getColorName()和getColorNames()事件,将颜色名称转化为颜色的数值。比如 “red”, “haloSilver”, “#FFFFFF”和 “0xFFFF00″。
让我们先来看一下Demo(可以右键View Source或点击这里察看源代码):
下面是完整代码(或点击这里察看):
Download: main.mxml
- <?xml version="1.0" encoding="utf-8"?>
- <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
- layout="vertical"
- verticalAlign="middle"
- backgroundColor="white">
- <mx:Script>
- <![CDATA[
- import mx.styles.StyleManager;
- private function toHex(item:Object):String {
- var hex:String = Number(item).toString(16);
- return ("00000" + hex.toUpperCase()).substr(-6);
- }
- private function button_click():void {
- var colorInt:uint = StyleManager.getColorName(textInput.text);
- if (colorInt == StyleManager.NOT_A_COLOR) {
- swatch.setStyle("backgroundColor", StyleManager.NOT_A_COLOR);
- lbl.text = "NOT A COLOR";
- } else {
- swatch.setStyle("backgroundColor", colorInt);
- lbl.text = "#" + toHex(colorInt);
- }
- }
- ]]>
- </mx:Script>
- <mx:ApplicationControlBar dock="true">
- <mx:Label text="Color name:" />
- <mx:TextInput id="textInput" />
- <mx:Button id="button"
- label="Submit"
- click="button_click()" />
- </mx:ApplicationControlBar>
- <mx:HBox>
- <mx:Box id="swatch"
- width="{lbl.height}"
- height="{lbl.height}" />
- <mx:Label id="lbl"
- selectable="true"
- fontFamily="_typewriter"
- fontSize="64" />
- </mx:HBox>
- </mx:Application>
代码:Peter deHaan 翻译/整理/编译:中文Flex例子
Topics:
Flex |
Tags: getColorName(), getColorNames(), StringUtil, StyleManager, trimArrayElements()
这段时间打开你的博客好慢哦,还经常上不来,用代理访问挺快的。