BSOne.SFC/EM.Lib/ImageEn_SRC/Demos/Annotations/TextArrow/Unit1.pas

109 lines
2.4 KiB
Plaintext

unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ieview, imageenview, Menus, ievect, Buttons, ExtCtrls, StdCtrls, hyieutils,
iexBitmaps, hyiedefs, iesettings, iexLayers, iexRulers;
type
TForm1 = class(TForm)
ImageEnVect1: TImageEnVect;
Panel1: TPanel;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
Label1: TLabel;
Edit1: TEdit;
CheckBox1: TCheckBox;
Button1: TButton;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure Edit1Change(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure ImageEnVect1NewObject(Sender: TObject; hobj: Integer);
private
{ Private declarations }
public
{ Public declarations }
v: integer;
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
{$R WindowsTheme.res}
procedure TForm1.Button1Click(Sender: TObject);
begin
imageenvect1.io.loadfromfile(imageenvect1.io.ExecuteOpenDialog('', '', false, 1, ''));
imageenvect1.RemoveAllObjects;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
imageenvect1.MouseInteractVt := [miPutLineLabel];
imageenvect1.ObjEndShape[-1] := iesOUTARROW;
imageenvect1.ObjBrushColor[-1] := clRed;
imageenvect1.ObjBrushStyle[-1] := bsSolid;
v := 0;
end;
// insert
procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
if speedbutton1.down then
imageenvect1.MouseInteractVt := [miPutLineLabel];
end;
procedure TForm1.SpeedButton2Click(Sender: TObject);
begin
if speedbutton2.down then
imageenvect1.MouseInteractVt := [miObjectSelect];
end;
procedure TForm1.Edit1Change(Sender: TObject);
var
ss: string;
begin
ss := ' ' + edit1.text + ' ';
imageenvect1.ObjText[-1] := ss;
if imageenvect1.SelObjectsCount > 0 then
imageenvect1.ObjText[imageenvect1.SelObjects[0]] := ss;
end;
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
if checkbox1.checked then
begin
edit1.Enabled := false;
label1.enabled := false;
end
else
begin
edit1.enabled := true;
label1.enabled := true;
end;
end;
procedure TForm1.ImageEnVect1NewObject(Sender: TObject; hobj: Integer);
begin
if checkbox1.checked then
begin
imageenvect1.ObjText[hobj] := ' ' + inttostr(v) + ' ';
inc(v);
end;
end;
end.