📄 unit1.~pas
字号:
{
author: MyGIS软件工作室(http://www.mygis.com.cn),培训用例
date:2006
function : 第2部分
}
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, OleCtrls, MapXLib_TLB, StdCtrls,ActiveX,AxCtrls;
type
TForm1 = class(TForm)
Map: TMap;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Button5: TButton;
btnExit: TButton;
Button6: TButton;
Button7: TButton;
Button8: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure btnExitClick(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button8Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
map.GeoSet := 'data/asia/asia.gst';
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
map.Layers.RemoveAll ;
end;
procedure TForm1.Button3Click(Sender: TObject);
var
lyr: CMapXLayer;
lyrinfo: CMapXLayerInfo;
ds : CMapXDataset;
font : TFont;
font_ : IFontDisp;
begin
lyrinfo := CoLayerInfo.Create;
lyrinfo.Type_ := miLayerInfoTypeTab;
lyrinfo.AddParameter('Name', 'TAB');
lyrinfo.AddParameter('FileSpec', ExtractFilePath(application.ExeName) +'data\asia\ASIACAPS.TAB');
lyr := Map.Layers.Add(lyrinfo, 0);
lyr.AutoLabel := true;
if Map.DataSets.Contains(lyr.Name) then
Map.DataSets.Remove(lyr.Name);
ds := Map.DataSets.Add(miDataSetLayer,lyr,lyr.Name,emptyparam,emptyparam,emptyparam,emptyparam,emptyparam);
ds.AddField('tempField','Country + Chr$(13) + Str$("首都人口:") + Cap_Pop');
lyr.LabelProperties.Dataset := ds;
lyr.LabelProperties.DataField := ds.Fields.Item['tempField'];
lyr.LabelProperties.Position := miPositionCR ;
lyr.LabelProperties.Offset := 5 ;
lyr.LabelProperties.Style.TextFontColor := clNavy;
lyr.LabelProperties.Overlap := false;
lyr.LabelProperties.PartialSegments := true;
font_ := lyr.LabelProperties.Style.TextFont;
font := TFont.Create ;
setolefont(font,font_);
font.Size := 9 ;
font.Name :='宋体';
end;
procedure TForm1.Button4Click(Sender: TObject);
var
lyr: CMapXLayer;
lyrinfo: CMapXLayerInfo;
begin
lyrinfo:= coLayerInfo.create();
lyrInfo.Type_ := miLayerInfoTypeServer;
lyrInfo.AddParameter('Name','OARACLE');
lyrInfo.AddParameter('ConnectString','UID=DEMO;PWD=DEMO;SRVR=ORACLE9I');
lyrinfo.AddParameter('Query','Select * FROM ASIA');
lyrinfo.AddParameter('ToolKit','ORAINET');
lyrinfo.AddParameter('Cache','ON');
lyr:=map.Layers.Add(lyrinfo,0);
end;
procedure TForm1.Button5Click(Sender: TObject);
var
lyr: CMapXLayer;
lyrinfo: CMapXLayerInfo;
flds :CMapXFields;
begin
lyrinfo := CoLayerInfo.Create;
flds := CoFields.Create;
flds.AddStringField('name',50,1);
flds.AddIntegerField('value',0);
lyrinfo.Type_ := miLayerInfoTypeTemp;
lyrinfo.AddParameter('Name', 'TEMP');
lyrinfo.AddParameter('Fields',flds);
//lyrinfo.AddParameter('TableStorageType', 'MemTable');
lyrinfo.AddParameter('TableStorageType', 'Native');
lyr := Map.Layers.Add(lyrinfo, 0);
end;
procedure TForm1.Button6Click(Sender: TObject);
var
lyr: CMapXLayer;
lyrinfo: CMapXLayerInfo;
flds :CMapXFields;
begin
lyrinfo := CoLayerInfo.Create;
flds := CoFields.Create;
flds.AddStringField('name',50,1);
flds.AddIntegerField('value',0);
lyrinfo.Type_ := miLayerInfoTypeNewTable ;
lyrinfo.AddParameter('Name', 'newtab');
lyrinfo.AddParameter('Fields',flds);
lyrinfo.AddParameter('FileSpec', ExtractFilePath(application.ExeName) +'data\asia\ASIACAPS1.TAB');
lyrinfo.AddParameter('TableStorageType', 'Native');
lyrinfo.AddParameter('OverwriteFile', '1');
lyr := Map.Layers.Add(lyrinfo, 0);
end;
procedure TForm1.Button7Click(Sender: TObject);
begin
// to finish it by yourself SaveMapAsGeoset
showmessage('无操作!-保存GST文件');
end;
procedure TForm1.Button8Click(Sender: TObject);
begin
Map.Layers.LayersDlg(EmptyParam,EmptyParam);
end;
procedure TForm1.btnExitClick(Sender: TObject);
begin
application.Terminate;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -