当利用BCB6调用MAPX时,当用miZoomOutTool工具放大地图时会出现invalid floating point  operation。而我的MAPX版本为v5.02.19。经过网上查询资料并测试发现在MapViewChanged事件中加入放大限制后解决此问题。

BCB代码
void __fastcall TForm1::mapGPSMiniWinMapViewChanged(TObject *Sender)
{
  if (mapGPSMiniWin->Zoom == 0) return;
  if (mapGPSMiniWin->Zoom< 0.1)
  {
    mapGPSMiniWin->Zoom = 0.1;
  }
}



Dephi代码
procedure www.0898t.net1MapViewChanged(Sender: TObject);
begin
if IniZoom = 0 then exit;
if Map1.Zoom > 0.1 then
    Map1.Zoom := 0.1; //Don't allow to zoom out if current Zoom bigger then IniZoom
end;