unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DXClass, DXDraws,intf;

type
  TForm1 = class(TForm)
    procedure DXTimerTimer(Sender: TObject; LagCount: Integer);
    procedure FormCreate(Sender: TObject);
    procedure DXDrawMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure DXDrawMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure DXDrawMouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
  private
    { Private declarations }
  public
 Procedure OnClick1(sender:TObject);
  end;

var
  Form1: TForm1;
  Startbtn,exitbtn:TdxImageButton;
  cb:TdxImageCheckBox;
implementation

{$R *.dfm}

procedure tform1.OnClick1(sender : TObject);
begin
if sender=exitbtn then close;
end;

procedure TForm1.DXTimerTimer(Sender: TObject; LagCount: Integer);
begin
if not dxdraw.CanDraw then exit;
fsurface:=dxdraw.Surface;
dxdraw.Surface.Fill(0);
cb.DoDraw;
startbtn.DoDraw;
if cb.Selected then
exitbtn.dodraw;
dxdraw.Flip;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
fsurface:=dxdraw.Surface;
il.Items.MakeColorTable;
dxdraw.DefColorTable:=il.Items.ColorTable;
dxdraw.ColorTable:=il.Items.ColorTable;
Startbtn:=TDXImageButton.Create;
Exitbtn:=TDXImageButton.Create;
with exitbtn do
begin
 x:=288;
 y:=350;
 image:=il.Items.Find('btn');
 width:=image.Width;
 height:=image.Height;
 caption:='ÂÛõÎä ÒèÏÀ !';
 OnClick:=onclick1;
end;
with startbtn do
begin
 x:=288;
 y:=300;
 image:=il.Items.Find('btn');
 width:=image.Width;
 height:=image.Height;
 caption:='ÂõÎä ÒèÏÀ !';
 OnClick:=onclick1;
end;
cb:=Tdximagecheckbox.Create;
  with cb do
  begin
  caption:='Æìè ìåíÿ!!!';
  image:=il.Items.Find('cb');
  width:=image.width;
  height:=image.Height;
  x:=350;
  y:=240;
  end;
end;

procedure TForm1.DXDrawMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
startbtn.OnMouseDown(x,y);
exitbtn.OnMouseDown(x,y);
cb.OnMouseDown(x,y);
end;

procedure TForm1.DXDrawMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
startbtn.OnMouseMove(x,y);
exitbtn.onmousemove(x,y);
cb.OnMouseMove(x,y);
end;

procedure TForm1.DXDrawMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
startbtn.OnMouseUp;
exitbtn.OnMouseUp;
cb.OnMouseUp;
end;

end.
