1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
| unit Unit9;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ExtCtrls, Vcl.StdCtrls;
type
TForm9 = class(TForm)
BtCalcul: TButton;
BtModifie: TButton;
BtValid: TButton;
Image1: TImage;
procedure BtCalculClick(Sender: TObject);
Procedure CreateBitmap;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure BtValidClick(Sender: TObject);
procedure BtModifieClick(Sender: TObject);
private
{ Déclarations privées }
public
{ Déclarations publiques }
end;
var
Form9: TForm9;
aBMP: TBitmap;
implementation
{$R *.dfm}
Procedure Tform9.CreateBitmap;
Begin
Image1.Width:=160;
Image1.Height :=160;
aBMP := TBitmap.Create;
aBMP.Width := Image1.Width;
aBMP.Height := Image1.Height;
Image1.Picture.Assign(aBMP);
End;
procedure TForm9.FormClose(Sender: TObject; var Action: TCloseAction);
begin
aBMP.Free;
end;
procedure TForm9.FormCreate(Sender: TObject);
begin
CreateBitmap;
BtCalcul.Enabled:=True;
Btmodifie.Enabled:=false;
BtValid.Enabled:=false;
end;
// Modifie le bitmap
procedure TForm9.BtModifieClick(Sender: TObject);
begin
Image1.Picture.Bitmap.Canvas.FillRect(Rect(40,40,120,120));
BtCalcul.Enabled:=False;
Btmodifie.Enabled:=true;
BtValid.Enabled:=True;
end;
// efface l'image
procedure TForm9.BtValidClick(Sender: TObject);
begin
Image1.Picture.Bitmap.Canvas.FillRect(Rect(0,0,160,160));
BtCalcul.Enabled:=True;
Btmodifie.Enabled:=false;
BtValid.Enabled:=false;
end;
// dessinne une image
procedure TForm9.BtCalculClick(Sender: TObject);
var
i: Integer;
begin
with Image1.Picture.Bitmap.Canvas.Pen do
begin
Color:=Clred;
Width:=5;
end;
for i := 0 to 5 do
begin
Image1.Picture.Bitmap.Canvas.Rectangle(10+(i*10),10+(i*10),150-(i*10),150-(i*10));
end;
BtCalcul.Enabled:=false;
Btmodifie.Enabled:=true;
BtValid.Enabled:=true;
end;
end. |
Partager