




已阅读5页,还剩67页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
MapBasic程序设计,MapBasic基础,什么是MapBasic语言?Mapbasic是一种高级脚本语言,是MapInfo地理信息系统二次开发语言,它通过高级语言来描述、定制和调用Mapinfo的功能来完成用户的需要。它和Mapinfo集成于一体,在MapInfo环境中运行。Mapbasic版本1.04.05.05.56.57.07.88.0,MapBasic基础,MapBasic集成环境MapBasic提供一个集成开发环境,使用该集成环境,用户能完成MapBasic程序的编辑、编译、调试和运行并提供良好的在线帮助。MapBasic集成开发环境由以下几部分组成文本编译器连接器在线帮助,MapBasic基础,MapBasic安装文件名和后缀*.mb源程序*.mbx编译后的程序*.mbp工程文件*.mbo对象文件*.err错误文件,MapBasic基础,建立和运行MapBasic程序(1)运行MapBasic集成环境(2)创建新程序(3)编辑程序(4)编译(5)运行程序,MapBasic基础,一个最简单的MapBasic程序,MapBasic集成开发环境,MapBasic语法,MapBasic语法,一般语法规则注释:单引号,编译时单引号后的字符被忽略字母大小写:不区分跨行输入:Ifcounter=55orcounter=34thenNote“Counterisinvalid”EndIf,MapBasic语法,嵌入Mapbasic.defMapbasic文件是一文本文件,它定义了一些标准的Mapbasic代码,如果要使用Mapbasic定义的标准变量,需要包含Mapbasic.def文件在程序开头加入includemapbasic.def,变量、数据类型和数组,变量声明及赋值用Dim语句声明局部变量。每一个变量必须在使用之前声明。使用“”给变量赋值。DimCounterAsIntergerDimx,y,langitude,latitudeAsFloatDimstart_date,end_dateAsDate,First_name,last_nameAsStringCounter=10X=12.01Start_date=“01/10/2005”,变量、数据类型和数组,变量命名规则每个变量名最长不能超过31个字符变量名中不能有空格变量名必须以字母或者“_”开头变量名由字母、数字、“#”、“_”组成,可以用下列字符结尾$,%,value2;value3;”Value2Into整数变量CheckBoxTitle“”Into整数变量Positionx,yWidth宽度Height高度,对话框,尺寸和位置定义宽度Width高度Height位置position单位:1个对话框单位=1/8字符宽度(高度)ControlOKButtonTitle“确定:”position10,30ControlCancelButtonTitle“取消:”position90,30,一个对话框程序,IncludeMapbasic.defDeclareSubMainDeclareSubReset_SubDeclareSubOK_SubGlobalgs_searchforAsStringSubMainDimi_details,l_showlegendAsIntegerDimmap_name,v_quarter,v_scopeAsIntegerDimSym_variableAsObjectSetStyleSymbol(35,RED,36)DialogWidth165Height190Title图层控制,ControlStaticTextTitle输入地图名称Position5,10ControlEditTextValue中国Intomap_nameID1Position60,8width90ControlGroupBoxTitle地图细节Position5,30Width70Height40ControlRadioGroupTitle列表2;列表3;列表4Value4Intov_quarterID4Position5,90width65Height35ControlMultiListBoxTitle街道;高速公路;城镇;乡村;河流Value3Intov_scopeID5Position95,90width65height35ControlPopupMenuTitle城镇;乡村;全省;ID6Position5,140,ControlCheckBoxTitleInclude&LegendIntol_showlegendID7Position95,140ControlButtonTitle&ResetPosition10,165Callingreset_subControlOKButtonPosition65,165CallingOK_SubControlCancelButtonPosition120,165EndSubSubReset_SubEndSubSubOK_SubENdSub,工具条使用,1.工具条的类型PushButtons按钮:这种叫做触发式按钮。当用户按下ToolButtons按钮后,按钮立即复位,并调用相应的处理程序。ToggleButtons按钮:这种按钮叫做开关式按钮。当用户单击ToggleButtons按钮时,这种按钮会在按下与没按下之间切换。ToolButton按钮:这种称为工具按钮。当用户单击这种按钮时,它处于活动状态,直到用户单击了另外的按钮。,工具条使用,2工具条的操作(1)创建工具条CreateButtonPadCreateButtonPad标识符As按钮类型PushButton|ToolButton|ToggleButtonTitletitle_stringWidthwPosition(x,y)Unitsunit_nameToolbarPosition(row,column)Show|HideFixed|Float,工具条使用,PushButtonHelpMsg提示信息Calling过程名称Icon图标IDToolButtonHelpMsg提示信息Calling过程名称Icon图标IDDrawMode点击模式(clickanddrag)ToggleButtonHelpMsg提示信息Calling过程名称Icon图标ID,工具条使用,CreateButtonPadUtilsAsPushButtonHelpMsgChoosethisbuttontodisplayquerydialogCallingbutton_sub_procIconMI_ICON_ZOOM_QUESTIONToolButtonHelpMsgUsethistooltodrawanewrouteCallingtool_sub_procIconMI_ICON_CROSSHAIRDrawModeDM_CUSTOM_LINEToggleButtonHelpMsgTurnproximitycheckingon/offCallingtoggle_prox_checkIconMI_ICON_RULERTitleUtilitiesWidth3Show,MapInfo表操作,1.创建新表CreateTable表(column字段数据类型,.)File保存位置TypeNATIVE|TypeDBFCharSetchar_set|TypeAccessDatabase数据库文件格式CreateTable四川_人口(地区名称Char(30),人口数float)File四川_人口TypeNATIVE,MapInfo表操作,2打开表OpenTable“d:四川地图四川_省面层.tab”3.关闭表语法:CloseTable表Interactive4.删除表语法:DropTable表名,MapInfo表操作,5.查询表Select表达式列表From表1,表2,.Where表达式条件Into结果表GroupBy字段OrderBy字段select*from四川_地区面层where面积10000into查询结果1,MapInfo表操作,6.修改表数据(1)Insert语句InsertInto表(字段)Values(字段表达式)或Select字段From表(2)Update表Set字段名=表达式,where7.修改表结构AlterTable表(Add字段1类型1,字段2类型2,.Modify字段1类型1,字段2类型2,.)AlterTable四川_地区面层Add(人口Float,GDP1998Float),MapInfo表操作,读取和查询表的数据(1)使用Fetch语句定位到表的某一行(2)表列变量的存取,格式如表名.列名opentableD:jian四川地图四川_地区面层.tabInteractiveDimareaAsFloatDimnameAsStringFetchFirstFrom四川_地区面层Area=四川_地区面层.面积name=四川_地区面层.名称Notename+的面积是:+Area+平方公里,MapInfo表操作,Fetch的用法FetchFirstFetchLastFetchNextFetchPrev,MapInfo表操作,结合SQL查询SQL查询表Browse*from四川_省面层浏览图层属性表select*from四川_地区面层where面积20000Selection表MapInfo当前查询结果保存在表Selection中,可以当普通表一样操作Selection表.,MapInfo表操作,opentableD:jian四川地图四川_地区面层.tabInteractiveMapFrom四川_地区面层DimareaAsFloatDimnameAsStringselect*from四川_地区面层where面积20000Dimi,nAsIntegern=SelectionInfo(SEL_INFO_NROWS)FetchFirstFromselectionFori=1tonArea=selection.面积name=selection.名称Notename+的面积是:+Area+平方公里FetchNEXTFromselectionNEXT,MapInfo图形对象,对象变量ObjectDimA,BAsObject对象从查询中获取DimAAsObjectselect*from四川_地区面层where名称=成都市A=selection.obj,MapInfo图形对象,获取对象类型和属性ObjectInfo(obj,参数)参数OBJ_INFO_TYPE返回对象类别OBJ_INFO_PEN返回对象属性OBJ_INFO_BRUSHOBJ_INFO_TEXTFONT返回值OBJ_TYPE_ARCOBJ_TYPE_ELLIPSEOBJ_TYPE_LINEOBJ_TYPE
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年智慧物流平台服务商与公路货运企业合作协议
- 2025年老年大学特色课程研发与区域推广合同
- 2025年度专科医院资深医师聘用及绩效评估合同
- 2025年高端婚礼策划及场地租赁一体化服务合同
- 2025年金融数据保密及风险管理合作协议
- 2025年艺术品交易中介机构年度合作协议范本
- 企业级GPS车载定位系统年度租赁及维护合同
- 2025年跨境电商品牌代理合作协议国际市场携手共赢
- 2025年自来水厂自动化控制系统维护与优化服务合同
- 2025年环保型工业厂房建设施工及设备安装一体化合同
- DB31/T 636.2-2015会议经营与服务规范第2部分:会议场所服务机构
- 云南二级建造师b证试题及答案
- 合并家庭组建协议书
- 宽带小区进场协议书
- 电解铝公司工程项目投资估算
- 融资专员测试题及答案
- 钣金工考试试题及答案
- 2025护士招聘笔试题目及答案
- 合同质保期更改补充协议
- GB/T 45381-2025动梁式龙门电火花成形机床精度检验
- 2024年小学数学教师选调进城考试试卷含答案
评论
0/150
提交评论