flex 颜色拾取器

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"       
			   xmlns:s="library://ns.adobe.com/flex/spark"       
			   xmlns:mx="library://ns.adobe.com/flex/mx"  
			   backgroundColor="white" minWidth="955" minHeight="600"> 
	
	<fx:Declarations>  <!-- 将非可视元素(例如服务、值对象)放在此处 --> 
		<fx:Model id="colorObj">   
			<root>    
				<color>{colorPicker.selectedColor}</color>    
				<red>{rChannel(colorObj.color)}</red>    
				<green>{gChannel(colorObj.color)}</green>    
				<blue>{bChannel(colorObj.color)}</blue>   
			</root>  
		</fx:Model> 
	</fx:Declarations>  
	
	<fx:Script>  
		<![CDATA[   
			private function fixedInt(value:int, mask:String):String {    
				return String(mask + value.toString(16)).substr(-mask.length).toUpperCase();   
			}      
			private function rChannel(value:int):int {    
				return value >> 16 & 0xFF;   
			}      
			private function gChannel(value:int):int {    
				return value >> 8 & 0xFF;   
			}      
			private function bChannel(value:int):int {    
				return value >> 0 & 0xFF;  
			}      
			private function rgbToInt(r:int, g:int, b:int):int {    
				return r << 16 | g << 8 | b << 0;   
			}  
		]]> 
	</fx:Script>   
	<mx:Form>  
		<mx:FormItem label="Color:" direction="horizontal">   
			<mx:ColorPicker id="colorPicker" />   
			<mx:Label text="0x{fixedInt(colorPicker.selectedColor, '000000')}" width="100" />  
		</mx:FormItem>  
		<mx:FormItem label="Red:" direction="horizontal">   
			<mx:Label text="{colorObj.red}" />   
			<mx:Label text="(0x{fixedInt(colorObj.red, '00')})" /> 
		</mx:FormItem>  
		<mx:FormItem label="Green:" direction="horizontal">   
			<mx:Label text="{colorObj.green}" />   
			<mx:Label text="(0x{fixedInt(colorObj.green, '00')})" />  
		</mx:FormItem>  
		<mx:FormItem label="Blue:" direction="horizontal">   
			<mx:Label text="{colorObj.blue}" />  
			<mx:Label text="(0x{fixedInt(colorObj.blue, '00')})" />  
		</mx:FormItem>  
		<mx:FormItem label="Color:" direction="horizontal">   
			<mx:Label text="{colorObj.color}" />   
			<mx:Label text="(0x{fixedInt(rgbToInt(colorObj.red, colorObj.green, colorObj.blue), '000000')})" />  
		</mx:FormItem> 
	</mx:Form>  
	<mx:Label text="{int(0xFF00FF)}" /> 
</s:Application>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值