先晒个图^_^
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Edit1: TEdit; GroupBox1: TGroupBox; StaticText1: TStaticText; Edit2: TEdit; Edit3: TEdit; Edit4: TEdit; Label1: TLabel; Label2: TLabel; Label3: TLabel; Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} var c:TColor; procedure TForm1.Button1Click(Sender: TObject); //TColor转RGB begin c:=StringToColor(Edit1.Text); Edit1.Color:=c; Edit2.Text:='$' + IntToHex(GetRValue(c),2); Edit3.Text:='$' + IntToHex(GetGValue(c),2); Edit4.Text:='$' + IntToHex(GetBValue(c),2); end; procedure TForm1.Button2Click(Sender: TObject); //RGB转TColor var str:string; r,g,b:Byte; begin R:=StrToInt(Edit2.Text); G:=StrToInt(Edit3.Text); B:=StrToInt(Edit4.Text); str:='$00' + IntToHex(b,2) + IntTohex(g,2) + IntTohex(r,2); Edit1.Color:=StrToInt(str); Edit1.Text:=str; end; procedure TForm1.Button3Click(Sender: TObject);//清空(不是真的清空,只是懒得每次都输入'$'这个符号) begin Edit1.Text:='$'; Edit2.Text:='$'; Edit3.Text:='$'; Edit4.Text:='$'; end; end.