📄 search.~pas
字号:
unit search;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls,MapXLib_TLB,ComObj;
type
Tsearchform = class(TForm)
ComboBoxlayer: TComboBox;
Label1: TLabel;
Label2: TLabel;
city: TEdit;
state: TEdit;
ok: TButton;
cancle: TButton;
procedure FormCreate(Sender: TObject);
procedure okClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
searchform: Tsearchform;
currentmap : Tmap;
implementation
uses formmain;
{$R *.dfm}
procedure Tsearchform.FormCreate(Sender: TObject);
var
lyr:mapxlib_tlb.layer;
i:integer;
begin
currentmap := mainform.Map1;
searchform.ComboBoxlayer.Clear;
for i:=1 to currentmap.Layers.Count do
begin
lyr:=currentmap.layers.item(i);
searchform.ComboBoxlayer.items.Add(lyr.Name);
end;
end;
procedure Tsearchform.okClick(Sender: TObject);
var
foundobj:variant;
lyr:mapxlib_tlb.layer;
layername : string;
begin
layername := comboboxlayer.Text;
application.MessageBox(PCHAR(layername),'',0);
lyr := currentmap.Layers.Item(layername);
lyr.Find.RefineLayer := currentmap.Layers.Item('usa');
foundobj := lyr.Find.Search(city.Text,state.Text);
if foundobj.findrc mod 10 = 1 then
begin
currentmap.ZoomTo(100,foundobj.centerx,foundobj.centery);
lyr.Selection.SelectByPoint(foundobj.centerx,foundobj.centery,miSelectionNew);
end
else
showmessage('city not found');
close;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -