2012-11-14 2 views

답변

7
당신은 R, G, B 또는 Longint와 값을 얻을 수 TAlphaColorRec을 사용할 수 있습니다

-

이 시도 (델파이 XE3 + FireMonkey2에 내가 XE2에 대한 확실하지 않다)를 Firemonkey 형태에 두 개의 버튼과 TRectangle를 추가 onClick 이벤트에 다음을 추가하십시오.

procedure TForm1.btnBrownClick(Sender: TObject); 
var 
    r: System.Byte; 
    aColor: TAlphaColor; 
    rgbValue: longint; 
begin 
    aColor:= TAlphaColorRec.Brown; //$A52A2A 
    r:= TAlphaColorRec(aColor).R; 
    ShowMessage('Red component of Brown is: $'+IntToHex(r,2)); 
    Rectangle1.Fill.Color:= aColor; 
    rgbValue:= TAlphaColorRec(aColor).Color; 
    ShowMessage('Brown is: $'+IntToHex(rgbValue,8)); 
end; 

procedure TForm1.btnRedderClick(Sender: TObject); 
var 
    aColor: TAlphaColor; 
    rgbValue: longint; 
begin 
    aColor:= TAlphaColorRec.Brown; 
    TAlphaColorRec(aColor).R:= 255; //$A52A2A becomes $FF2A2A 
    Rectangle1.Fill.Color:= aColor; 
    rgbValue:= TAlphaColorRec(aColor).Color; 
    ShowMessage('Redder Brown is: $'+IntToHex(rgbValue,8)); 
end; 
+0

감사합니다. sergeantKK :-) – cadetill

관련 문제