全局探色器

本例效果图:



此例回复 maxcool(我坚定的支持者与监督者, 离不开你呀!) 在
http://www.cnblogs.com/del/archive/2008/03/09/1096874.html#1097203 提出的问题.

全部代码如下:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Timer1: TTimer;
    Edit1: TEdit;
    procedure Timer1Timer(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  Timer1.Enabled := False;
  Timer1.Interval := 100;
  Button1.Default := True;
  Button1.Caption := '用回车操作这个按钮';
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Timer1.Enabled := not Timer1.Enabled;
  if Timer1.Enabled then Button1.Caption := '开始'
  else Button1.Caption := '停止';
end;

procedure TForm1.Timer1Timer(Sender: TObject);
var
  pt: TPoint;
  c: TColor;
begin
  GetCursorPos(pt);
  c := GetPixel(GetDC(0), pt.X, pt.Y);
  Self.Color := c;
  Edit1.Text := Format('$%.6x', [c]);
end;

end.

原文地址:https://www.cnblogs.com/del/p/1097279.html