Unit2.~pas
Upload User: wc0231
Upload Date: 2007-02-06
Package Size: 572k
Code Size: 7k
Category:

Graph program

Development Platform:

Delphi

  1. unit Unit2;
  2. interface
  3. uses
  4.   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  5.   Dialogs, Menus, ToolWin, ComCtrls, ImgList, ExtDlgs;
  6. type
  7.   TForm2 = class(TForm)
  8.     MainMenu1: TMainMenu;
  9.     about1: TMenuItem;
  10.     ToolBar1: TToolBar;
  11.     ToolButton1: TToolButton;
  12.     ToolButton2: TToolButton;
  13.     ToolButton3: TToolButton;
  14.     ToolButton4: TToolButton;
  15.     ImageList1: TImageList;
  16.     ToolButton5: TToolButton;
  17.     ToolButton6: TToolButton;
  18.     OpenPictureDialog1: TOpenPictureDialog;
  19.     SavePictureDialog1: TSavePictureDialog;
  20.     ToolButton7: TToolButton;
  21.     ColorDialog1: TColorDialog;
  22.     ToolButton8: TToolButton;
  23.     ToolButton9: TToolButton;
  24.     ToolButton10: TToolButton;
  25.     ToolButton11: TToolButton;
  26.     ToolButton12: TToolButton;
  27.     ToolButton13: TToolButton;
  28.     ToolButton14: TToolButton;
  29.     ToolButton15: TToolButton;
  30.     procedure about1Click(Sender: TObject);
  31.     procedure ToolButton1Click(Sender: TObject);
  32.     procedure ToolButton2Click(Sender: TObject);
  33.     procedure ToolButton3Click(Sender: TObject);
  34.     procedure ToolButton4Click(Sender: TObject);
  35.     procedure ToolButton6Click(Sender: TObject);
  36.     procedure ToolButton7Click(Sender: TObject);
  37.     procedure ToolButton8Click(Sender: TObject);
  38.     procedure ToolButton9Click(Sender: TObject);
  39.     procedure ToolButton11Click(Sender: TObject);
  40.     procedure ToolButton12Click(Sender: TObject);
  41.     procedure ToolButton13Click(Sender: TObject);
  42.     procedure ToolButton14Click(Sender: TObject);
  43.     procedure ToolButton15Click(Sender: TObject);
  44.   private
  45.     { Private declarations }
  46.   public
  47.     { Public declarations }
  48.   end;
  49. var
  50.   Form2: TForm2;
  51. implementation
  52. {$R *.dfm}
  53. uses unit1,unit3;
  54. procedure TForm2.about1Click(Sender: TObject);
  55. begin
  56. with TAboutBox.Create(Self) do
  57.   try
  58.     ShowModal;
  59.   finally
  60.     Free;
  61.   end;
  62. end;
  63. procedure TForm2.ToolButton1Click(Sender: TObject);
  64. begin
  65.     form1.image1.Cursor:=crCross;
  66.     form1.Label1.Caption:='直线(dbg):';
  67.     form1.edit1.Text:='';
  68.     form1.edit1.SetFocus;
  69.     unit1.com_sel:=2;
  70.     toolbutton1.Down:=true;
  71.     toolbutton2.Down:=false;
  72.     toolbutton3.Down:=false;
  73.     toolbutton4.Down:=false;
  74.     toolbutton12.Down:=false;
  75.     toolbutton13.Down:=false;
  76.     toolbutton14.Down:=false;
  77.     ToolButton15.Down:=false;
  78. end;
  79. procedure TForm2.ToolButton2Click(Sender: TObject);
  80. begin
  81.     form1.image1.Cursor:=crCross;
  82.     form1.label1.Caption:='请输入圆心横坐标:';
  83.     form1.edit1.Text:='';
  84.     form1.edit1.SetFocus;
  85.     unit1.com_sel:=3;
  86.     toolbutton1.Down:=false;
  87.     toolbutton2.Down:=true;
  88.     toolbutton3.Down:=false;
  89.     toolbutton4.Down:=false;
  90.     toolbutton12.Down:=false;
  91.     toolbutton13.Down:=false;
  92.     toolbutton14.Down:=false;
  93.     ToolButton15.Down:=false;
  94.     form1.save_default();
  95. end;
  96. procedure TForm2.ToolButton3Click(Sender: TObject);
  97. begin
  98.     form1.image1.Cursor:=crCross;
  99.     form1.Label1.Caption:='请输入椭圆中心横坐标:';
  100.     form1.edit1.Text:='';
  101.     form1.edit1.SetFocus;
  102.     unit1.com_sel:=4;
  103.     toolbutton1.Down:=false;
  104.     toolbutton2.Down:=false;
  105.     toolbutton3.Down:=true;
  106.     toolbutton4.Down:=false;
  107.     toolbutton12.Down:=false;
  108.     toolbutton13.Down:=false;
  109.     toolbutton14.Down:=false;
  110.     ToolButton15.Down:=false;
  111.     form1.save_default();
  112. end;
  113. procedure TForm2.ToolButton4Click(Sender: TObject);
  114. var bmp1:tbitmap;
  115. begin
  116.    bmp1:=tbitmap.Create;
  117.    bmp1.Height:=form1.Image1.Height;
  118.    bmp1.Width:=form1.Image1.Width;
  119.    bmp1.Canvas.CopyRect(form1.image1.Canvas.ClipRect,form1.image1.Canvas,form1.image1.Canvas.ClipRect);
  120.    form1.Image1.Canvas.CopyRect(form1.image1.Canvas.ClipRect,unit1.bmp1[unit1.rb].Canvas,form1.image1.Canvas.ClipRect);
  121.    unit1.bmp1[unit1.rb+1].Width:=form1.Image1.Width;
  122.    unit1.bmp1[unit1.rb+1].Height:=form1.Image1.Height;
  123.    unit1.bmp1[unit1.rb+1].Canvas.CopyRect(bmp1.Canvas.ClipRect,bmp1.Canvas,bmp1.Canvas.ClipRect);
  124.    bmp1.Free;
  125.    form2.ToolButton11.Enabled:=true;
  126.    unit1.rb:=unit1.rb-1;
  127.    unit1.ud:=unit1.rb;
  128.    if unit1.rb=0 then form2.ToolButton4.Enabled:=false;
  129. end;
  130. procedure TForm2.ToolButton6Click(Sender: TObject);
  131. var bmp2:tbitmap;
  132.     rect2:trect;
  133. begin
  134.    if savepicturedialog1.Execute then
  135.    begin
  136.     bmp2:=tbitmap.Create;
  137.     bmp2.Width:=form1.Image1.Width;
  138.     bmp2.Height:=form1.Image1.Height;
  139.     rect2:=rect(0,0,form1.Image1.Width,form1.Image1.Height);
  140.     bmp2.Canvas.CopyRect(rect2,form1.image1.Canvas,rect2);
  141.     bmp2.SaveToFile(Savepicturedialog1.FileName);
  142.     bmp2.free;
  143.    end;
  144. end;
  145. procedure TForm2.ToolButton7Click(Sender: TObject);
  146. var bitmap:tbitmap;
  147.     rect1:trect;
  148. begin
  149.    if openpicturedialog1.Execute then
  150.    begin
  151.       bitmap:=tbitmap.Create;
  152.       bitmap.Create;
  153.       bitmap.LoadFromFile(openpicturedialog1.FileName);
  154.       rect1:=rect(0,0,form1.Image1.Width,form1.Image1.Height);
  155.       form1.Image1.Canvas.StretchDraw(rect1,bitmap);
  156.       bitmap.Free;
  157.    end;
  158. end;
  159. procedure TForm2.ToolButton8Click(Sender: TObject);
  160. begin
  161.    if colordialog1.Execute then
  162.    begin
  163.      cl:=colordialog1.Color;
  164.    end;
  165. end;
  166. procedure TForm2.ToolButton9Click(Sender: TObject);
  167. begin
  168. form1.Image1.Picture := nil;
  169. end;
  170. procedure TForm2.ToolButton11Click(Sender: TObject);
  171. begin
  172.    form1.Image1.Canvas.CopyRect(form1.image1.Canvas.ClipRect,unit1.bmp1[unit1.ud+2].Canvas,form1.image1.Canvas.ClipRect);
  173.    unit1.ud:=unit1.ud+1;
  174.    unit1.rb:=unit1.ud;
  175.    if unit1.rb=1 then form2.ToolButton4.Enabled:=true;
  176.    if unit1.ud=unit1.st then form2.ToolButton11.Enabled:=false;
  177. end;
  178. procedure TForm2.ToolButton12Click(Sender: TObject);
  179. begin
  180.  form1.image1.Cursor:=crCross;
  181.  form1.Label1.Caption:='请选择删除的图形';
  182.  toolbutton12.Down:=true;
  183.  toolbutton1.Down:=false;
  184.  toolbutton2.Down:=false;
  185.  toolbutton3.Down:=false;
  186.  toolbutton4.Down:=false;
  187.  toolbutton13.Down:=false;
  188.  toolbutton14.Down:=false;
  189.  ToolButton15.Down:=false;
  190. end;
  191. procedure TForm2.ToolButton13Click(Sender: TObject);
  192. begin
  193.  form1.Label1.Caption:='请选择移动的图形';
  194.  toolbutton13.Down:=true;
  195.  toolbutton1.Down:=false;
  196.  toolbutton2.Down:=false;
  197.  toolbutton3.Down:=false;
  198.  toolbutton4.Down:=false;
  199.  toolbutton12.Down:=false;
  200.  toolbutton14.Down:=false;
  201.  ToolButton15.Down:=false;
  202. end;
  203. procedure TForm2.ToolButton14Click(Sender: TObject);
  204. begin
  205.  form1.Label1.Caption:='请选择旋转的支点';
  206.  toolbutton14.Down:=true;
  207.  toolbutton1.Down:=false;
  208.  toolbutton2.Down:=false;
  209.  toolbutton3.Down:=false;
  210.  toolbutton4.Down:=false;
  211.  toolbutton12.Down:=false;
  212.  toolbutton13.Down:=false;
  213.  ToolButton15.Down:=false;
  214. end;
  215. procedure TForm2.ToolButton15Click(Sender: TObject);
  216. begin
  217.  form1.Label1.Caption:='请选择缩放图形';
  218.  toolbutton14.Down:=false;
  219.  ToolButton15.Down:=true;
  220.  toolbutton1.Down:=false;
  221.  toolbutton2.Down:=false;
  222.  toolbutton3.Down:=false;
  223.  toolbutton4.Down:=false;
  224.  toolbutton12.Down:=false;
  225.  toolbutton13.Down:=false;
  226. end;
  227. end.