Dim mylyr As MapXLib.Layer
Dim i, j, fldnum, rowcnt As Integer
'下面程序创建一个新的层(tab文件)
Dim LayerInfoObject As New LayerInfo
Dim flds As New MapXLib.Fields
Dim feafac As MapXLib.FeatureFactory
Dim ftr As MapXLib.Feature
Dim pnt As New MapXLib.Point
Dim lyr As MapXLib.Layer
Dim newstyle As New Style
'设置点对象样式
With newstyle
.SymbolType = miSymbolTypeBitmap
.SymbolBitmapSize = 24
.SymbolBitmapTransparent = False
.SymbolBitmapName = "YIEL2-32.BMP"
End With
flds.AddStringField "name", 20
flds.AddNumericField "xcor", 13, 6
flds.AddNumericField "ycor", 13, 6
LayerInfoObject.Type = miLayerInfoTypeNewTable
LayerInfoObject.AddParameter "FileSpec", App.Path & "/maptable/tmp.tab"
LayerInfoObject.AddParameter "Name", "tmp"
LayerInfoObject.AddParameter "Fields", flds
LayerInfoObject.AddParameter "OverwriteFile", "1"
' LayerInfoObject.AddParameter "AutoCreateDataset", 1 '创建数据集
Map1.Layers.Add LayerInfoObject
Set lyr = Map1.Layers(1) '取得第一层,即新建层
Set feafac = Map1.FeatureFactory '取得地图所有对象集
Map1.AutoRedraw = False
lyr.Editable = True
'创建一个点
pnt.Set Map1.CenterX, Map1.CenterY
Set ftr = feafac.CreateSymbol(pnt, newstyle)
lyr.AddFeature ftr '增加一个点对象
lyr.Refresh