coatty
路人甲
路人甲
  • 注册日期2004-03-18
  • 发帖数10
  • QQ
  • 铜币138枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:1372回复:2

不是高手,不能解决我的问题

楼主#
更多 发布于:2004-11-09 23:07
<P>1。如何解决mapx4.5标注中的汉字为空?</P>
<P>2. mapx5.02+dephi; 在创建的临时图层中增加多个图元,出错out of memory</P>
<P>  Map1.layers.CreateLayer('Findlayer', emptyparam, 3, emptyparam, emptyparam); //</P>
<P>Map1.Datasets.Add(miDataSetLayer, map1.Layers.item['Findlayer'],'Findlayer', EmptyParam, EmptyParam, EmptyParam,EmptyParam, EmptyParam);
    增加图元:(循环增加,每次变更NFtrx1……)</P>
<P> Rectangle:= CreateOleObject('MapX.Rectangle.5');</P>
<P>    Rectangle.Set(Nftrx1,Nftry1,Nftrx2,Nftry2);
    map1.DefaultStyle.RegionPattern:=2;
    map1.DefaultStyle.RegionColor:=micoloryellow;</P>
<P>    ftr:= Map1.FeatureFactory.CreateRegion(Rectangle,map1.DefaultStyle);
    newftr:=map1.Layers.item['SHlayer'].AddFeature(ftr,emptyparam);
    newftr.KeyValue:=dwid;// +':' +dwname;
    newftr.Style.RegionPattern:=2;
    newftr.style.RegionColor:=miColorYellow;
    newftr.Update(emptyparam,emptyparam);</P>
<P>  第一个图元能够增加,增加第二次时,运行到   ftr:= Map1.FeatureFactory.CreateRegion(Rectangle,map1.DefaultStyle);时出out of memory 错误!</P>
<P>
    </P>
喜欢0 评分0
chinajysun
路人甲
路人甲
  • 注册日期2004-10-31
  • 发帖数46
  • QQ
  • 铜币320枚
  • 威望0点
  • 贡献值0点
  • 银元0个
1楼#
发布于:2004-11-14 12:14
口气太大了
举报 回复(0) 喜欢(0)     评分
coatty
路人甲
路人甲
  • 注册日期2004-03-18
  • 发帖数10
  • QQ
  • 铜币138枚
  • 威望0点
  • 贡献值0点
  • 银元0个
2楼#
发布于:2004-11-11 15:42
<P>多谢版主的回复,可是好像没有什么用。</P>
<P>1.地图在mapinfo中的中文标注能正常显示,到了dephi运行程序还是不行,而且我动态在一个临时图层增加的图元也没法设置它的字段宽度呀。</P>
<P>2.我将</P>
<P>    Rectangle:= CreateOleObject('MapX.Rectangle.5');<A>//创</A>建一个矩形对象
    Rectangle.Set(Nftrx1,Nftry1,Nftrx2,Nftry2);//确定位置
    ftr:= Map1.FeatureFactory.CreateRegion(Rectangle,map1.DefaultStyle);//创建出矩形图元
    newftr:=map1.Layers.item['SHlayer'].AddFeature(ftr,emptyparam);//将图元增加到某图层
    newftr.update(emptyparam,emptyparam) <A>file://保</A>存</P>
<P>代码写出一个过程,再在循环中调用这个过程,这样可以循环可以多进行几次,但到了</P>
<P>第六次时提示,“存储器不够,无法完成任务”。</P>
<P>    版主能否再帮着看看,</P>
<P>   另外,Rectangle:= CreateOleObject('MapX.Rectangle.5');<A>//创</A>建一个矩形对象
    ftr:= Map1.FeatureFactory.CreateRegion(Rectangle,map1.DefaultStyle);//创建出矩形图元</P>
<P>不是定义为new吗?
    对了,这段程序如果mapx4.5控件的话,没有一点问题,这跟mapx5是dll而mapx4.5是OCX有关?</P>
[此贴子已经被作者于2004-11-11 15:44:23编辑过]
举报 回复(0) 喜欢(0)     评分
游客

返回顶部