mapbasic常见问题及解答

mapbasic常见问题及解答

ID:10650270

大小:56.50 KB

页数:4页

时间:2018-07-07

mapbasic常见问题及解答_第1页
mapbasic常见问题及解答_第2页
mapbasic常见问题及解答_第3页
mapbasic常见问题及解答_第4页
资源描述:

《mapbasic常见问题及解答》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、MapBasic----常见问题解答1.MapBasic的程序在Professional下调试完成,如何移植到Runtimes上?l利用mapbasic开发的Professional环境下的应用程序,要运行在runtime环境下,应当在你的程序中增加MenuBarShow命令,以使你的应用程序的菜单显示出来。在利用其它语言如,VisualBasic,VisualC++,Delphi等以OleAutomation方式开发应用程序时,MapinfoProfessional环境下的程序要运行在MapinfoRuntime环境下,应当将创建Mapinfo对象的语句重写,以VisualBasi

2、c为例,在MapinfoProfessional环境下:DimMapinfoasobjectSetMapinfo=Createobject("Mapinfo.Application")在MapinfoRuntime环境下:DimMapinfoasobjectSetMapinfo=Createobject("Mapinfo.Runtime").2.为什么我在MapBasic程序中利用Commandinfo(CMD_INFO_X)和Commandinfo(CMD_INFO_Y)获得的点击处的经纬度坐标值,其小数点后总是4位,如何才能提高其精度?l你可以利用Format$(CommandI

3、nfo(CMD_INFO_X),",#.######")Format$(CommandInfo(CMD_INFO_Y),",#.######")将坐标精度提高到小数点后6位。3.如何创建字体?l创建字体的语句如下:CreateTextintoWindowFrontwindow()"Hello!"(10,10)(20,20)FontMakeFont("Helvetica",1,12,BLACK,WHITE)上句中,12指所要创建的字体的大小,(x,y)指定字符串的左下及右上角位置。将来显示出来的字符的实际大小只由(x,y)来控制。4.如何改变地图单位?lcommandinfo()和ob

4、jectgeography()都可用来获取当前地图窗口中的特定点的坐标,但是对于非地球投影的地图应当注意一个问题:如果当前地图为地球投影则两个函数获取的为经纬度坐标,其与statusbar上显示的坐标一致。但当前地图为非地球投影时,则应当利用:setcoordsysnonearthunits"m"bounds(0,0)(10,10)来设置当前地图的投影,否则利用上述的两个函数时会得出不正确的坐标信息。另外,还要注意的另一个问题是:commandinfo()只能用在用户自己定义的过程中,不能用在Mapinfo的系统过程中(例如,Selchangedhandler()),否则得到的并不是

5、坐标信息,而是该对象在数据库中的记录号。但objectgeography()却没有此问题。5.如何设置窗口投影与坐标体系?l仅以无大地坐标为例:在程序中必须使用下面的语句:SetCoordSysNonEarthUnits"m"Bounds(0,0)(1000,120)它是设置MapBasic编程的坐标系的。6.如何利用几个点来绘制折线?l利用CreatePlinestatement是可以解决您的问题的。例句如下。CreatePlineintowindowfrontwindow()5(10,20)(20,10)(20,30)(40,60)(50,70)7.如何利用Mapbasic实现选

6、择多个区域?l这个问题我想很简单,选择区域和选择点、线等地物对象是一样的。只要有多个区域同时满足相同的条件,则一条选择语句自然会将所有满足该条件的区域都选中。例如,Select*fromChinawhereTotal_Pop_Proj>=30000000会将所有人口数大于等于30000000的城市全部先选中。8.如何利用Mapbasic实现动态改变数组的大小?dima(10)asintegerfori=1to10a(i)=inextredima(20)fori=11to20a(i)=inext9.如何实现选择区域内的所有对象的选择?lSelect*fromtablewhereobjw

7、ithin(selectobjfromtable)说明:table是所要选择的地物对象所在的表,table是新创建的选择工具所在的表。10.如何让数据库在找到一条记录后,停止搜索?用户自己建立了一个Mapinfo表,其中存储了一万多个常用汉字的编码(按照汉语拼音的顺序进行编码)。想利用select语句来对给定的任意汉字搜索其编码,但当要搜索的汉字很多时,用户发现其速度很慢。能否有什么办法让Mapinfo在找到某个汉字的编码之后,即停止对数据库的遍历。l这个

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。