unit
uasborland;
interface
uses
Windows,
Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,
ExtCtrls, StdCtrls, Buttons, Menus, ExtDlgs;
type
TForm1 =
class(TForm)
Image1:
TImage;
GroupBox1:
TGroupBox;
GroupBox2:
TGroupBox;
GroupBox3:
TGroupBox;
Panel1:
TPanel; Panel2: TPanel; Panel3: TPanel;
Panel4:
TPanel; Panel5: TPanel; Panel6: TPanel;
Panel7:
TPanel; Panel8: TPanel; Panel9: TPanel;
Panel10:
TPanel; Panel15: TPanel; Panel16: TPanel;
Panel17:
TPanel; Panel18: TPanel; Panel19: TPanel;
Panel20:
TPanel; Panel21: TPanel; Panel22: TPanel;
Panel24:
TPanel; Panel25: TPanel; Panel26: TPanel;
SpeedButton1:
TSpeedButton;
SpeedButton2:
TSpeedButton;
SpeedButton3:
TSpeedButton;
SpeedButton4:
TSpeedButton;
SpeedButton5:
TSpeedButton;
MainMenu1:
TMainMenu;
SavePictureDialog1:
TSavePictureDialog;
OpenPictureDialog1:
TOpenPictureDialog;
ColorDialog1:
TColorDialog;
File1:
TMenuItem;
SaveAs1:
TMenuItem; Open1: TMenuItem; Exit1:TMenuItem;
procedure
Image1MouseDown(Sender: TObject; Button: TMouseButton;
Shift:
TShiftState; X, Y: Integer);
procedure
Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
procedure
Image1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y:
Integer);
procedure
SpeedButton2MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState;
X, Y: Integer);
procedure
SpeedButton5Click(Sender: TObject);
procedure
SpeedButton4Click(Sender: TObject);
procedure
SpeedButton3Click(Sender: TObject);
procedure
SpeedButton2Click(Sender: TObject);
procedure
SpeedButton1Click(Sender: TObject);
procedure
Panel1Click(Sender: TObject);
procedure
Panel2Click(Sender: TObject);
procedure
Panel3Click(Sender: TObject);
procedure
Panel4Click(Sender: TObject);
procedure
Panel5Click(Sender: TObject);
procedure
Panel6Click(Sender: TObject);
procedure
Panel7Click(Sender: TObject);
procedure
Panel8Click(Sender: TObject);
procedure
Panel9Click(Sender: TObject);
procedure
Panel10Click(Sender: TObject);
procedure
Panel15Click(Sender: TObject);
procedure
Panel16Click(Sender: TObject);
procedure
Panel17Click(Sender: TObject);
procedure
Panel18Click(Sender: TObject);
procedure
Panel19Click(Sender: TObject);
procedure
Panel20Click(Sender: TObject);
procedure
Panel21Click(Sender: TObject);
procedure
Panel22Click(Sender: TObject);
procedure
Panel24Click(Sender: TObject);
procedure
Panel25Click(Sender: TObject);
procedure
Panel26Click(Sender: TObject);
procedure
Exit1Click(Sender: TObject);
procedure
SaveAs1Click(Sender: TObject);
procedure
Open1Click(Sender: TObject);
private
{ Private
declarations }
public
{ Public
declarations }
end;
var
Form1:
TForm1;
besar,tool:integer;
filename :
string;
posawal,posakhir:TPoint;
x1,y1:integer;
implementation
uses Types;
{$R *.dfm}
procedure
TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
Shift:
TShiftState; X, Y: Integer);
begin
Canvas.MoveTo(x,y);
x1:=x; y1:=y;
posawal:=Point(x,y);
posakhir:=Point(x,y);
if
SpeedButton1.Down then tool:=1;
if
SpeedButton2.Down then tool:=2;
if
SpeedButton3.Down then tool:=3;
if
SpeedButton4.Down then tool:=4;
end;
procedure
TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if tool=1
then
begin
Image1.Canvas.LineTo(x,y);
Image1.Canvas.Pen.Color:=Panel1.Color;
Canvas.Pen.Style:=psSolid;
Canvas.MoveTo(20,60);
end
else
if tool = 3
then
Image1.Canvas.MoveTo(x,y)
else if
tool=4 then begin
Image1.Canvas.Pen.Color:=clWhite;
Image1.Canvas.Brush.Color:=clWhite;
Image1.Canvas.Ellipse(x-besar,y-besar,x,y);
end;
end;
procedure
TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton;
Shift:
TShiftState; X, Y: Integer);
begin
if tool=1
then tool:=0;
if tool=2
then begin
Image1.Canvas.Rectangle(posawal.X,
posawal.y ,posakhir.x , posakhir.Y);
posakhir:=
Point(x,y);
Image1.Canvas.Brush.Color:=
Panel1.Color;
Image1.Canvas.pen.Color:=
clBlack;
Image1.Canvas.Rectangle(posawal.X,
posawal.y ,posakhir.x , posakhir.Y); end;
if tool=5
then begin
Image1.Canvas.Ellipse(posawal.X,
posawal.y ,posakhir.x , posakhir.Y);
posakhir:=
Point(x,y);
Image1.Canvas.Brush.Color:=
Panel1.Color;
Image1.Canvas.pen.Color:=
clBlack;
Image1.Canvas.Ellipse(posawal.X,
posawal.y ,posakhir.x , posakhir.Y); end;
if tool=3
then
begin
Image1.Canvas.LineTo(x1,y1);
Image1.Canvas.Pen.Color:=
Panel1.Color;
end;
end;
procedure
TForm1.SpeedButton1Click(Sender: TObject);
begin
tool:=1; end;
procedure
TForm1.SpeedButton4Click(Sender: TObject);
begin tool:=2;
end;
procedure
TForm1.SpeedButton3Click(Sender: TObject);
begin tool:=3; end;
procedure
TForm1.SpeedButton2Click(Sender: TObject);
begin tool:=4;
end;
procedure
TForm1.SpeedButton5Click(Sender: TObject);
begin tool:=5;
end;
procedure
TForm1.Panel24Click(Sender: TObject);
begin besar
:=10; end;
procedure
TForm1.Panel25Click(Sender: TObject);
begin besar
:=25; end;
procedure
TForm1.Panel26Click(Sender: TObject);
begin besar
:=30; end;
procedure
TForm1.Panel1Click(Sender: TObject);
begin if ColorDialog1.Execute then Panel1.Color:=ColorDialog1.Color;
end;
procedure
TForm1.Panel2Click(Sender: TObject);
begin Panel1.Color:=Panel2.Color;
end;
procedure
TForm1.Panel3Click(Sender: TObject);
begin Panel1.Color:=Panel3.Color;
end;
procedure
TForm1.Panel4Click(Sender: TObject);
begin Panel1.Color:=Panel4.Color;
end;
procedure
TForm1.Panel5Click(Sender: TObject);
begin Panel1.Color:=Panel5.Color;
end;
procedure
TForm1.Panel6Click(Sender: TObject);
begin Panel1.Color:=Panel6.Color;
end;
procedure
TForm1.Panel7Click(Sender: TObject);
begin Panel1.Color:=Panel7.Color;
end;
procedure
TForm1.Panel8Click(Sender: TObject);
begin Panel1.Color:=Panel8.Color;
end;
procedure
TForm1.Panel9Click(Sender: TObject);
begin Panel1.Color:=Panel9.Color;
end;
procedure
TForm1.Panel10Click(Sender: TObject);
begin Panel1.Color:=Panel10.Color;
end;
procedure
TForm1.Panel15Click(Sender: TObject);
begin Panel1.Color:=Panel15.Color;
end;
procedure
TForm1.Panel16Click(Sender: TObject);
begin Panel1.Color:=Panel16.Color;
end;
procedure
TForm1.Panel17Click(Sender: TObject);
begin Panel1.Color:=Panel17.Color;
end;
procedure
TForm1.Panel18Click(Sender: TObject);
begin Panel1.Color:=Panel18.Color;
end;
procedure
TForm1.Panel19Click(Sender: TObject);
begin Panel1.Color:=Panel19.Color;
end;
procedure
TForm1.Panel20Click(Sender: TObject);
begin Panel1.Color:=Panel20.Color;
end;
procedure
TForm1.Panel21Click(Sender: TObject);
begin Panel1.Color:=Panel21.Color;
end;
procedure
TForm1.Panel22Click(Sender: TObject);
begin Panel1.Color:=Panel22.Color;
end;
procedure
TForm1.SpeedButton2MouseUp(Sender: TObject; Button: TMouseButton;
Shift:
TShiftState; X, Y: Integer);
Begin tool:=0;
end;
procedure
TForm1.Exit1Click(Sender: TObject);
begin Form1.Close;
end;
procedure
TForm1.SaveAs1Click(Sender: TObject);
begin SavePictureDialog1.DefaultExt:=
'BMP';
if
SavePictureDialog1.Execute then
begin filename:=
SavePictureDialog1.Filename;
Image1.Picture.SaveToFile
(filename); end; end;
procedure
TForm1.Open1Click(Sender: TObject);
begin if
OpenPictureDialog1.Execute then begin
OpenPictureDialog1.Filter:=
'. Bitmap (. * Bmp) | * BMP';
FileName:=
OpenPictureDialog1.FileName;
image1.Picture.LoadFromFile
(FileName); end; end;
end.
banyak x areffffffff
BalasHapus