MSCBSC 移动通信论坛
搜索
登录注册
网络优化工程师招聘专栏 4G/LTE通信工程师最新职位列表 通信实习生/应届生招聘职位

  • 阅读:2324
  • 回复:5
[厂家通用资料] Mapinfo Basic9.0 英文资料(用户指导+技术说明)
congcong512
初级会员



 发短消息    关注Ta 

积分 202
帖子 41
威望 485 个
礼品券 0 个
专家指数 -3
注册 2009-8-10
专业方向  TD网优
回答问题数 0
回答被采纳数 0
回答采纳率 0%
 
发表于 2012-04-10 18:29:46  只看楼主 
【资料名称】:Mapinfo Basic9.0 英文资料

【资料作者】:未知

【资料日期】:2008-6

【资料语言】:中文

【资料格式】:DOC

【资料目录和简介】:

Chapter 1: Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Hardware & Software Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14
Compatibility with Previous Versions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14
Installing the MapBasic Development Environment . . . . . . . . . . . . . . . . . . . . . . . . . . .14
Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14
Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14
Starting MapBasic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
MapBasic File Names and File Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
MapBasic Documentation Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16
MapBasic® Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16
Installing Online Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16
Conventions Used in This Manual. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17
Terms. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17
Typographical Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17
Register Today! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17
Working with Technical Support. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18
Before You Call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18
The Support Tracking System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18
Expected Response Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18
Exchanging Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18
Software Defects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
Other Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
Chapter 2: New and Enhanced MapBasic Statements and Functions . . . . . . . . 21
New in MapBasic. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22
Enhanced Functions and Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
LabelClause Change . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41
Layer Activate clause . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42
Adding New HotLink Definitions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .43
Modifying Existing HotLinks Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .43
Removing HotLink Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44
Reordering HotLink Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44
Exceptions to Support Backwards Compatibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44
Table of Contents
4 MapBasic 9.0
Chapter 3: A Quick Look at MapBasic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47
Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
How Do I Create and Run a MapBasic Application? . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
What Are the Key Features of MapBasic? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
MapBasic Lets You Customize MapInfo Professional . . . . . . . . . . . . . . . . . . . . . . . . . . 49
MapBasic Lets You Automate MapInfo Professional. . . . . . . . . . . . . . . . . . . . . . . . . . . 49
MapBasic Provides Powerful Database-Access Tools . . . . . . . . . . . . . . . . . . . . . . . . . 50
MapBasic Lets You Connect MapInfo Professional to Other Applications . . . . . . . . . . 50
How Do I Learn MapBasic? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
The MapBasic Window in MapInfo Professional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Training and On-Site Consulting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Chapter 4: Using the Development Environment . . . . . . . . . . . . . . . . . . . . . . . . .53
Introduction to MapBasic Development Environment . . . . . . . . . . . . . . . . . . . . . . . . . 54
Editing Your Program. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Keyboard Shortcuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Limitations of the MapBasic Text Editor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Compiling Your Program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
A Note on Compilation Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Running a Compiled Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Using Another Editor to Write MapBasic Programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Linking Multiple Modules Into a Single Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
What is a MapBasic Project File? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Creating a Project File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Compiling and Linking a Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Calling Functions or Procedures From Other Modules . . . . . . . . . . . . . . . . . . . . . . . . . 62
Menu Summary in MapBasic Development Environment. . . . . . . . . . . . . . . . . . . . . . . 64
The Edit Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
The Search Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
The Project Menu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
The Window Menu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
The Help Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Chapter 5: MapBasic Fundamentals. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .69
General Notes on MapBasic Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Comments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Case-Sensitivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Continuing a Statement Across Multiple Lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Codes Defined In mapbasic.def. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Typing Statements Into the MapBasic Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Fixed-length and variable-length String variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

Array Variables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .73
Custom Data Types (Data Structures) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .74
Global Variables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .75
Scope of Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .76
Expressions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .76
What is a Constant?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .76
What is an Operator? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .77
What is a Function Call? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .77
A Closer Look At Constants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .78
Variable Type Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .81
A Closer Look At Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .81
MapBasic Operator Precedence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .85
Looping, Branching, and Other Flow-Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .86
If…Then Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .86
Do Case Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .87
GoTo Statement. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .88
For…Next Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .88
Do…Loop. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .89
While…Wend Loop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .90
Ending Your Program. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .90
Ending Your Program and MapInfo Professional. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .90
Procedures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .90
Main Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .91
Calling a Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .91
Calling a Procedure That Has Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .91
Passing Parameters By Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .92
Passing Parameters By Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .92
Calling Procedures Recursively . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .93
Procedures That Act As System Event Handlers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .93
What Is a System Event?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .94
What Is an Event Handler? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .94
When Is a System Event Handler Called? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .96
Tips for Handler Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .97
Keep Handler Procedures Short . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .97
Selecting Without Calling SelChangedHandler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .97
Preventing Infinite Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .97
Custom Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .97
Scope of Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .98
Compiler Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .98
The Define Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .98
The Include Statement. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .99
Program Organization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .100
Table of Contents
6 MapBasic 9.0
Chapter 6: Debugging and Trapping Runtime Errors . . . . . . . . . . . . . . . . . . . . .101
Runtime Error Behavior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Debugging a MapBasic Program. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Summary of the Debugging Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .102
Limitations of the Stop Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Other Debugging Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Error Trapping. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .104
Example of Error Trapping. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Chapter 7: Creating the User Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .107
Introduction to MapBasic User Interface Principles . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Event-Driven Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
What Is an Event? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
What Happens When The User Generates A Menu Event? . . . . . . . . . . . . . . . . . . . . 108
How Does a Program Handle ButtonPad Events? . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
How Does a Program Handle Dialog Box Events? . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Menus. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Menu Fundamentals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Adding New Items To A Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Removing Items From A Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Creating A New Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Altering A Menu Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Re-Defining The Menu Bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Specifying Language-Independent Menu References. . . . . . . . . . . . . . . . . . . . . . . . . 115
Customizing MapInfo Professional’s Shortcut Menus . . . . . . . . . . . . . . . . . . . . . . . . . 115
Assigning One Handler Procedure To Multiple Menu Items . . . . . . . . . . . . . . . . . . . . 116
Simulating Menu Selections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
Defining Shortcut Keys And Hot Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
Controlling Menus Through the MapInfo Professional Menus File . . . . . . . . . . . . . . . 118
Standard Dialog Boxes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
Displaying a Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
Asking a Yes-or-No Question . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
Selecting a File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
Indicating the Percent Complete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
Displaying One Row From a Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
Custom Dialog Boxes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
Sizes and Positions of Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
Control Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Specifying a Control’s Initial Value. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
Reading a Control’s Final Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
Responding to User Actions by Calling a Handler Procedure . . . . . . . . . . . . . . . . . . . 127
Enabled / Disabled Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .128
Table of Contents
User Guide 7
Letting the User Choose From a List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .128
Managing MultiListBox Controls. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .129
Specifying Shortcut Keys for Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .129
Closing a Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .130
Windows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .130
Specifying a Window’s Size and Position . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .131
Map Windows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .131
Using Animation Layers to Speed Up Map Redraws . . . . . . . . . . . . . . . . . . . . . . . . . .132
Browser Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .134
Graph Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .134
Layout Windows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .135
Redistrict Windows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .135
Message Window. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .135
ButtonPads (Toolbars) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .137
What Happens When the User Chooses a Button?. . . . . . . . . . . . . . . . . . . . . . . . . . .137
MapBasic Statements Related To ButtonPads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .138
Creating A Custom PushButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .139
Adding A Button To The Main ButtonPad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .140
Creating A Custom ToolButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .140
Choosing Icons for Custom Buttons. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .141
Selecting Objects by Clicking With a ToolButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . .142
Including Standard Buttons in Custom ButtonPads . . . . . . . . . . . . . . . . . . . . . . . . . . .143
Assigning Help Messages to Buttons. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .144
Docking a ButtonPad to the Top of the Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .144
Other Features of ButtonPads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .145
Integrating Your Application Into MapInfo Professional . . . . . . . . . . . . . . . . . . . . . . .145
Loading Applications Through the Startup Workspace . . . . . . . . . . . . . . . . . . . . . . . .145
Manipulating Workspaces through MapBasic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .146
Performance Tips for the User Interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .147
Animation Layers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .147
Avoiding Unnecessary Window Redraws . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .147
Purging the Message Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .147
Suppressing Progress Bar Dialog Boxes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .147
Chapter 8: Working With Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
Determining Table Names at Runtime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .150
Opening Two Tables With The Same Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .150
Opening Non-Native Files As Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .151
Reading Row-And-Column Values From a Table. . . . . . . . . . . . . . . . . . . . . . . . . . . . .152
Alias Data Types as Column References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .153
Scope. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .155
Using the “RowID” Column Name To Refer To Row Numbers . . . . . . . . . . . . . . . . . .155
Table of Contents
8 MapBasic 9.0
Using the “Obj” Column Name To Refer To Graphic Objects . . . . . . . . . . . . . . . . . . . 155
Finding Map Addresses In Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
Geocoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
Performing SQL Select Queries. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
Error Checking for Table and Column References . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
Writing Row-And-Column Values to a Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
Creating New Tables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
Modifying a Table’s Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
Creating Indexes and Making Tables Mappable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Reading A Table’s Structural Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Working With The Selection Table. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
Changing the Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
Updating the Currently-Selected Rows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
Using the Selection for User Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
Accessing the Cosmetic Layer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
Accessing Layout Windows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
Multi-User Editing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
The Rules of Multi-User Editing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Preventing Conflicts When Writing Shared Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
Opening a Table for Writing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
Files that Make Up a Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
Raster Image Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
Working With Metadata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
What is Metadata?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
What Do Metadata Keys Look Like? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
Examples of Working With Metadata. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .170
Working With Seamless Tables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
What is a Seamless Table? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
How Do Seamless Tables Work? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
MapBasic Syntax for Seamless Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
Limitations of Seamless Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
Accessing DBMS Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
How Remote Data Commands Communicate with a Database . . . . . . . . . . . . . . . . . 173
Connecting and Disconnecting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
Accessing/Updating Remote Databases with Linked Tables . . . . . . . . . . . . . . . . . . . 175
Live Access to Remote Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
Performance Tips for Table Manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
Minimize Transaction-File Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
Use Indices Where Appropriate. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
Using Sub-Selects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
Optimized Select Statements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
Using Update Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
Table of Contents
User Guide 9
Chapter 9: File Input/Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
Overview of File Input/Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .180
Sequential File I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .181
Random File I/O. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .183
Binary File I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .183
Platform-Specific & International Character Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . .183
File Information Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .184
Chapter 10: Graphical Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
Using Object Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .186
Using the “Obj” Column. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .186
Creating an Object Column . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .187
Limitations of the Object Column . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .187
Querying An Object’s Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .188
Object Styles (Pen, Brush, Symbol, Font) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .189
Understanding Font Styles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .190
Style Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .190
Selecting Objects of a Particular Style . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .192
Creating New Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .193
Object-Creation Statements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .193
Object-Creation Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .194
Creating Objects With Variable Numbers of Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . .194
Storing Objects In a Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .195
Creating Objects Based On Existing Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .196
Creating a Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .196
Using Union, Intersection, and Merge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .196
Creating Isograms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .197
Creating Offset Copies. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .197
Modifying Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .198
General Procedure for Modifying an Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .198
Repositioning An Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .198
Moving Objects and Object Nodes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .198
Modifying An Object’s Pen, Brush, Font, or Symbol Style . . . . . . . . . . . . . . . . . . . . . .199
Converting An Object To A Region or Polyline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .199
Erasing Part Of An Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .199
Points Of Intersection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .200
Working With Map Labels. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .200
Turning Labels On . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .200
Turning Labels Off . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .200
Editing Individual Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .200
Querying Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .201
Table of Contents
10 MapBasic 9.0
Other Examples of the Set Map Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
Differences Between Labels and Text Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
Coordinates and Units of Measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
Units of Measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
Advanced Geographic Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
Using Geographic Comparison Operators. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
Querying Objects in Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
Using Geographic SQL Queries With Subselects . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
Using Geographic Joins. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
Proportional Data Aggregation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
Chapter 11: Advanced Features of Microsoft Windows . . . . . . . . . . . . . . . . . . .211
Declaring and Calling Dynamic Link Libraries (DLLs) . . . . . . . . . . . . . . . . . . . . . . . . 212
Specifying the Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
Passing Parameters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
Calling Standard Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
Calling a DLL Routine by an Alias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
Array Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
User-Defined Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
Logical Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
Handles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .215
Example: Calling a Routine in KERNEL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
Troubleshooting Tips for DLLs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
Creating Custom Button Icons and Draw Cursors . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
Reusing Standard Icons. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
Custom Icons. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
Custom Draw Cursors for Windows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
Inter-Application Communication Using DDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
Overview of DDE Conversations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
How MapBasic Acts as a DDE Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
How MapInfo Professional Acts as a DDE Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
How MapInfo Professional Handles DDE Execute Messages. . . . . . . . . . . . . . . . . . . 223
Communicating With Visual Basic Using DDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
Examples of DDE Conversations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
DDE Advise Links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
Incorporating Windows Help Into Your Application . . . . . . . . . . . . . . . . . . . . . . . . . . 224
Chapter 12: Integrated Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .227
What Does Integrated Mapping Look Like? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
Conceptual Overview of Integrated Mapping. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
Technical Overview of Integrated Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
System Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
Other Technical Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
Table of Contents
User Guide 11
A Short Sample Program: “Hello, (Map of) World” . . . . . . . . . . . . . . . . . . . . . . . . . . .230
A Closer Look at Integrated Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .231
Sending Commands to MapInfo Professional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .231
Querying Data from MapInfo Professional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .232
Customizing MapInfo Professional’s Shortcut Menus . . . . . . . . . . . . . . . . . . . . . . . . .236
Terminating Your Visual Basic Program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .238
A Note About MapBasic Command Strings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .238
A Note About Dialog Boxes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .238
A Note About Accelerator Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .238
Using Callbacks to Retrieve Info from MapInfo Professional . . . . . . . . . . . . . . . . . . .239
Technical Requirements for Callbacks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .239
General Procedure for Using OLE Callbacks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .239
Processing the Data Sent to a Callback. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .241
C/C++ Syntax for Standard Notification Callbacks. . . . . . . . . . . . . . . . . . . . . . . . . . . .242
Alternatives to Using OLE Callbacks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .243
DDE Callbacks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .243
MBX Callbacks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .243
Displaying Standard MapInfo Professional Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . .244
Disabling Online Help. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .244
Displaying a Custom Help File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .244
Related MapBasic Statements and Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .245
OLE Automation Object Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .246
Properties of the Application Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .249
Properties of the MBApplications Collection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .251
Properties of an Object in MBApplications. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .251
Properties of the MBGlobals Collection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252
Properties of an Object in MBGlobals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .253
Properties of the MIMapGen Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .253
Methods of the MIMapGen Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .254
Properties of the MISearchInfo Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .256
Method of the MIRow Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .257
Properties of the MIField Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .257
Properties of the MISelection Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .258
MapInfo Professional Command-Line Arguments. . . . . . . . . . . . . . . . . . . . . . . . . . . .258
Getting Started with Integrated Mapping and Visual C++ with MFC . . . . . . . . . . . . . .259
Adding Toolbar Buttons and Handlers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .263
Using Exception Handling to Catch MapInfo Professional Errors . . . . . . . . . . . . . . . .265
Add OLE Automation Server Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .266
Adding the WindowContentsChanged Callback . . . . . . . . . . . . . . . . . . . . . . . . . . . . .266
Learning More . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .267
Table of Contents
12 MapBasic 9.0
Appendix A: Sample Programs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .269
Samples\Delphi Directory. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
Samples\DLLEXAMP Directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
Samples\MapBasic Directory. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
Samples\MFC Directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
Samples\PwrBldr Directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
Samples\VB4 Directory. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
Samples\VB6 Directory. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
Appendix B: Summary of Operators. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .279
Numeric Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
Comparison Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
Logical Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
Geographic Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
Precedence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
Automatic Type Conversions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .282
Appendix C: List of MapBasic Changes by Version . . . . . . . . . . . . . . . . . . . . . .285
Additions and Changes in MapBasic 8.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
New MapBasic Functions and Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
Enhanced MapBasic Functions and Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
Additions and Changes in MapBasic 8.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
Enhanced Statements and Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
Additions and Changes in MapBasic 7.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
New Statements and Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
Enhanced Statements and Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
Appendix D: Supported ODBC Table Types . . . . . . . . . . . . . . . . . . . . . . . . . . . .291
Appendix E: Making a Remote Table Mappable . . . . . . . . . . . . . . . . . . . . . . . . .293
Prerequisites for Storing/Retrieving Spatial Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
Creating a MapInfo Map Catalog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
Appendix F: Data Setting and Management. . . . . . . . . . . . . . . . . . . . . . . . . . . . .297
Upgrading Applications from Versions Prior to 6.5. . . . . . . . . . . . . . . . . . . . . . . . . . . 298
Application Data Files and Directories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
Default Preferences Paths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
Registry Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
Installer Requirements and Group Policies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
MapBasic Glossary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .305
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .314

查看积分策略说明
附件下载列表:
2012-4-10 18:29:46  下载次数: 22
MB_UserGuide.pdf (2.84 MB)
2012-4-10 18:29:46  下载次数: 28
MB_ReferenceGuide.pdf (6.47 MB)
扫码关注5G通信官方公众号,免费领取以下5G精品资料
  • 1、回复“LTBPS”免费领取《《中国联通5G终端白皮书》
  • 2、回复“ZGDX”免费领取《中国电信5G NTN技术白皮书
  • 3、回复“TXSB”免费领取《通信设备安装工程施工工艺图解
  • 4、回复“YDSL”免费领取《中国移动算力并网白皮书
  • 5、回复“5GX3”免费领取《 R16 23501-g60 5G的系统架构1
  • 6、回复“iot6”免费领取《【8月30号登载】物联网创新技术与产业应用蓝皮书——物联网感知技术及系统应用
  • 7、回复“6G31”免费领取《基于云网融合的6G关键技术白皮书
  • 8、回复“IM6G”免费领取《6G典型场景和关键能力白皮书
  • 对本帖内容的看法? 我要点评





    圣诞老人
     
    [充值威望,立即自动到帐] [VIP贵宾权限+威望套餐] 另有大量优惠赠送活动,请光临充值中心
    充值拥有大量的威望和最高的下载权限,下载站内资料无忧
    carpsd
    金牌会员
    鎵嬫満鍙风爜宸查獙璇


     发短消息    关注Ta 

    积分 8538
    帖子 1616
    威望 194924 个
    礼品券 8 个
    专家指数 206
    注册 2007-10-13
    专业方向  网络优化
    回答问题数 0
    回答被采纳数 0
    回答采纳率 0%
     
    发表于 2012-04-10 21:40:56 
    技术问题,回答得专家指数,快速升级
    看起来不错,但看不懂。

    对本帖内容的看法? 我要点评

     
    [立即成为VIP会员,百万通信专业资料立即下载,支付宝、微信付款,简单、快速!]
    sxzrs
    金牌会员
    鎵嬫満鍙风爜宸查獙璇


     发短消息    关注Ta 

    积分 5565
    帖子 775
    威望 16042 个
    礼品券 8 个
    专家指数 -105
    注册 2007-5-17
    专业方向  优化
    回答问题数 0
    回答被采纳数 0
    回答采纳率 0%
     
    发表于 2012-04-11 15:51:37 
    全英文的,看不懂的

    对本帖内容的看法? 我要点评

     
    最新通信职位:广东通信人才网 | 北京通信人才网 | 上海通信人才网 | 南京通信人才网 | 西安通信人才网 | 重庆通信人才网 | 中国通信人才网
    lbyu
    中级会员
    鎵嬫満鍙风爜宸查獙璇


     发短消息    关注Ta 

    积分 880
    帖子 193
    威望 5730 个
    礼品券 0 个
    专家指数 -85
    注册 2012-3-23
    专业方向  无线集成
    回答问题数 0
    回答被采纳数 0
    回答采纳率 0%
     
    发表于 2012-04-12 10:02:59 
    新版本已经出来过了。

    对本帖内容的看法? 我要点评

     
    热点: 通信招聘职位 | 网络优化全集 | WCDMA精品 | TD-SCDMA学习资料 | EVDO | MGW媒体网关资料
    congcong512
    初级会员



     发短消息    关注Ta 

    积分 202
    帖子 41
    威望 485 个
    礼品券 0 个
    专家指数 -3
    注册 2009-8-10
    专业方向  TD网优
    回答问题数 0
    回答被采纳数 0
    回答采纳率 0%
     
    发表于 2012-09-25 15:34:32  只看楼主 
    是吗,还没有拿到,可否分享下?谢谢!

    对本帖内容的看法? 我要点评





    圣诞老人
     
    最新通信职位:广东通信人才网 | 北京通信人才网 | 上海通信人才网 | 南京通信人才网 | 西安通信人才网 | 重庆通信人才网 | 中国通信人才网
    v2c_yy
    初级会员
    鎵嬫満鍙风爜宸查獙璇


     发短消息    关注Ta 

    积分 72
    帖子 14
    威望 264 个
    礼品券 5 个
    专家指数 2
    注册 2012-3-8
    专业方向  技术员
    来自 重庆
    回答问题数 0
    回答被采纳数 0
    回答采纳率 0%
     
    发表于 2012-09-25 22:30:05  QQ
    能否发邮箱谢谢了.15844862@qq.com

    对本帖内容的看法? 我要点评

     
    [2分钟拥有VIP权限和充足威望,可下载站内任何资料] [快速找到一份高薪的通信行业职位]

    快速回复主题    
    标题 [厂家通用资料] Mapinfo Basic9.0 英文资料(用户指导+技术说明)" tabindex="1">
    内容
     上传资料请点左侧【添加附件】

    (勾选中文件为要删除文件)


    当前时区 GMT+8, 现在时间是 2024-05-16 18:16:50
    渝ICP备11001752号  Copyright @ 2006-2016 mscbsc.com  本站统一服务邮箱:mscbsc@163.com

    Processed in 0.374056 second(s), 21 queries , Gzip enabled
    TOP
    清除 Cookies - 联系我们 - 移动通信网 - 移动通信论坛 - 通信招聘网 - Archiver