Structure pour gerer le couleur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
   TColorRec = record
   case integer of
    0:(Color:Cardinal);
    1:(Bytes:array[0..3]of byte);
    2:(R,G,B,Alpha:Byte);
    3:(SysColorIdx:word;UnUsed:byte;IsSysColor:boolean);
   end;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
procedure TForm1.Button1Click(Sender: TObject);
var
 C:TColor;
begin
 
 C := clWindow;
 
 if TColorRec(C).IsSysColor then
    C:=windows.GetSysColor(TColorRec(C).SysColorIdx);
 
 with TColorRec(C) do
   ShowmessageFmt('Color:%x '#10'R:%x, G:%x, B:%x',[Color,R,G,B]);
 
end;