The problem seems to be here: var hexNum:Number = parseInt(c, 16);
You're asking parseInt to convert a string to an integer and telling it the string is an hexadecimal representation, when it's decimal, according to this line: trace("string colour:"+c); // e.g. for red: 16711680 So try, hexNum:Number = parseInt(c,10); If you have a number, you don't need to worry about decimal / hexadecimal. It's just a number: you can have, say, the number 10, which would be represented as "10" in decimal, "0xa" in hexadecimal, "1010" in binary, etc, but those are just a way to display a number. If you already have the number, you don't need any extra step. Hope this helps. Cheers Juan Pablo Califano 2009/2/10, ali drongo <alidro...@googlemail.com>: > > Thanks for your responses guys. I'm still stuck on this and I have been > playing around a lot. I can get the number from the decimal format to the > hex string but when I try to convert it to a hex number the colour is > incorrect. > Any advice much much appreciated, this is taking up lots of time. > > Thanks: > > > > public function colorIn(o:Object):void > { > trace("==================="); > var colA:Array = o.Colors.split(","); > colA.splice(0,1); > for ( var i:uint=1; i<=totSprites-1; i++ ) { > var c:String = colA[i]; > trace("string colour:"+c); // e.g. for red: 16711680 > //convert to decimal number > var tmpN:Number = Number(c); > trace("decimal:"+tmpN); // traces: 16711680 > //convert to string of hex number > var hexStr:String = tmpN.toString(16); > trace("hexStr:"+hexStr); //traces: ff0000 > //convert to hex number > var hexNum:Number = parseInt(c, 16); > trace("= = = = = = => hex number:"+hexNum); //traces in decimal format > and > wrong number: 376510080 > //set mc to color > var mcToCol:* = mainImage["s"+i]; > //transform color > var newColorTransform:ColorTransform = mcToCol.transform.colorTransform; > newColorTransform.color = hexNum; > mcToCol.transform.colorTransform = newColorTransform; > }; > } > > > > > > On Mon, Feb 9, 2009 at 8:55 PM, Merrill, Jason < > jason.merr...@bankofamerica.com> wrote: > > > Courtesy Evan Mullins of Circlecube Studio: > > > > //bitwise conversion of rgb color to a hex value > > function rgb2hex(r, g, b):Number > > { > > return(r<<16 | g<<8 | b); > > } > > > > //bitwise conversion of a hex color into rgb values > > function hex2rgb (hex):Object > > { > > var red = hex>>16; > > var greenBlue = hex-(red<<16) > > var green = greenBlue>>8; > > var blue = greenBlue - (green << 8); > > //trace("r: " + red + " g: " + green + " b: " + blue); > > return({r:red, g:green, b:blue}); > > } > > > > > > > > Jason Merrill > > > > Bank of America > > Learning Performance Solutions Instructional Technology & Media > > > > Learn about the Adobe Flash platform for rich media experiences - join > > the Bank of America Flash Platform Community > > > > > > > > > > > > > > -----Original Message----- > > From: flashcoders-boun...@chattyfig.figleaf.com > > [mailto:flashcoders-boun...@chattyfig.figleaf.com] On Behalf Of ali > > drongo > > Sent: Monday, February 09, 2009 12:26 PM > > To: Flash Coders List > > Subject: [Flashcoders] Converting hex colour numbers back and forth > > > > Hi there, I'm saving a bunch of colours as a string then using this > > string > > later to colour objects in the same way. Something is going wrong > > though as > > the colours I am getting back are not the same as the ones I put in. > > If anyone could point out where I'm going wrong I'd be really grateful, > > I've > > googled this and and have checked the help files and as far as I can see > > it's correct (though obviously it isn't!). > > > > Here's my code, I've written comments next to the relevant lines: > > > > /// in my coloured button class > > > > > > // 1) colour is set on mouse click > > private function clickHandler(e:MouseEvent):void > > { > > // passes hexValue from ColorPicker > > colorThis(this.parent.parent["colorPick"].hexValue); > > } > > // 2) color is stored in var > > public function colorThis(c:String):void > > { > > //stores colour > > currColor = Number("0x"+c); > > var newColorTransform:ColorTransform = this.transform.colorTransform; > > newColorTransform.color = currColor; > > this.transform.colorTransform = newColorTransform; > > } > > > > > > > > // application class > > // 3) stores colors in an array > > private function collectColors():Array > > { > > colors_ar = new Array(); > > for ( var i:uint=1; i<=totSprites; i++ ) { > > //stores colour in array > > colors_ar[i] = mainImage["s"+i].currColor; > > }; > > return colors_ar; > > } > > > > // 4) array is written to string and sent to php to be written to txt > > file > > > > private function sendData(e:MouseEvent):void > > { > > showSending(true); > > var variables:URLVariables = new URLVariables(); > > //stores all colours as a string > > variables.colors = collectColors().toString(); > > var request:URLRequest = new URLRequest(); > > request.url = "http://www.xxxx.com/text/test.php"; > > request.method = URLRequestMethod.POST; > > request.data = variables; > > var loader:URLLoader = new URLLoader(); > > loader.dataFormat = URLLoaderDataFormat.TEXT; > > loader.addEventListener(Event.COMPLETE, completeHandler); > > try > > { > > loader.load(request); > > } > > catch (error:Error) > > { > > trace("Unable to load URL"); > > } > > } > > > > > > ///////// viewer class > > // 5) > > > > public function colorIn(o:Object):void > > { > > var colA:Array = o.Colors.split(","); > > colA.splice(0,1); > > for ( var i:uint=1; i<=totSprites; i++ ) { > > //calls the method in the coloured button class > > mainImage["s"+i].colorThis(colA[i]).toString(16); > > }; > > } > > _______________________________________________ > > Flashcoders mailing list > > Flashcoders@chattyfig.figleaf.com > > http://chattyfig.figleaf.com/mailman/listinfo/flashcoders > > _______________________________________________ > > Flashcoders mailing list > > Flashcoders@chattyfig.figleaf.com > > http://chattyfig.figleaf.com/mailman/listinfo/flashcoders > > > _______________________________________________ > Flashcoders mailing list > Flashcoders@chattyfig.figleaf.com > http://chattyfig.figleaf.com/mailman/listinfo/flashcoders > _______________________________________________ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders