unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls;
type
TForm1 = class(TForm)
Image1: TImage;
Timer1: TTimer;
procedure Image1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
selectcolor:tcolor;
change:boolean;
pal:array [0..255] of array [0..255] of boolean;
implementation
{$R *.dfm}
procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var i,j:integer;
begin
timer1.Enabled:=false;
selectcolor:=image1.Canvas.Pixels[x,y];
for i:=0 to image1.Width-1 do
for j:=0 to image1.Height-1 do
if image1.Canvas.Pixels[i,j]=selectcolor then
pal[i,j]:=true;
timer1.Enabled:=true;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
var i,j:integer;
cl:tcolor;
begin
if change then cl:=clblack
else
cl:=clwhite;
for i:=0 to image1.Width-1 do
for j:=0 to image1.Height-1 do
if pal[i,j]=true then
image1.Canvas.Pixels[i,j]:=cl;
change:=not change;
end;
end.