unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, Grids, StdCtrls;
type
TForm1 = class(TForm)
Frames: TStringGrid;
Page: TImage;
procedure PageMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure PageMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure PageMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure FormCreate(Sender: TObject);
procedure FramesClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
f:boolean = false;
Can : array of TCanvas;
n:integer = 0;
implementation
{$R *.dfm}
procedure TForm1.PageMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
f:=true;
page.canvas.MoveTo(x,y);
end;
procedure TForm1.PageMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if f then page.canvas.LineTo(x,y);
end;
procedure TForm1.PageMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
Var t:integer;
begin
f:=false;
for t := n to 9 do
can[t] := page.Canvas;
end;
procedure TForm1.FormCreate(Sender: TObject);
var i : Integer;
begin
SetLength(Can, 10);
for i := 0 to 9 do
Can[i] := TCanvas.Create;
page.canvas.Pen.Color:=clWhite;
page.Canvas.Rectangle(0,0,page.Width,page.Height);
page.canvas.Pen.Color:=clBlack;
for i := 0 to 9 do
can[i] := page.Canvas;
for i := 0 to 9 do
frames.Cells[i,0]:= inttostr(i+1);
BitBlt(page.canvas.Handle, 0, 0, width, height, Can[0].Handle, 0, 0, SRCCOPY);
end;
procedure TForm1.FramesClick(Sender: TObject);
begin
n:=frames.Col;
BitBlt(page.canvas.Handle, 0, 0, width, height, Can[frames.col].Handle, 0, 0, SRCCOPY);
end;
end.