Axaptapedia is now maintained by AgileCadence For more information please click here.
Color picker
From Axaptapedia
Axapta provides a ready made wrapper of the windows color picker. This article describes how it can be used:
1) Define an extended data type called MyColor with:
FormHelp = SysChooseColor
2) Define a table with a field based on the new datatype
3) Define a form based on this table.
Now the form will use for this field the standard windows color picker as a lookup. The color RGB code returned is a string of the following format:
#<red value in hex><green value in hex><blue value in hex>
Examples:
#FF0000 is red #00FF00 is green #0000FF is blue #C0C0C0 is grey
Usually most Axapta color properties will need a integer to be passed as color. To convert above string to the required integer, the follwoing function can be used:
int Str2Color(str colorStr) { int RValue, GValue, BValue; RValue = hex2int(substr(colorStr,2,2)); GValue = hex2int(substr(colorStr,4,2)); BValue = hex2int(substr(colorStr,6,2)); return (WinApi::RGB2int(RValue,GValue,BValue)); }
Enjoy,
--Markus Schmitz 06:34, 16 Jun 2005 (EDT)