Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

MB60UG

.pdf
Скачиваний:
12
Добавлен:
13.02.2015
Размер:
1.47 Mб
Скачать

MapBasic

Среда разработки

(Русское издание)

Руководство

пользователя

MapInfo Corporation

Troy, New York

Information in this document is subject to change without notice and does not represent a commitment on the part of the vendor or its representatives. No part of this document may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, without the written permission of MapInfo Corporation, One Global View, Troy, New York 12180–8399.

Ó1992-2000 MapInfo Corporation. All rights reserved. MapInfo Help Ó1992-2000 MapInfo Corporation. All rights reserved.

Русский перевод. ©2000 Владимир Журавлев, Алексей Колотов, Всеволод Николаев. Все права защищены. Русская версия. ©2000 Эсти Мап. Все права защищены.

MapInfo, MapInfo Professional, MapBasic, and the MapInfo Logo are registered trademarks of MapInfo Corporation. Contact MapInfo Corporation on the Internet at: http://www.mapinfo.com.

MapInfo Corporate Headquarters:

MapInfo Europe Headquarters:

Germany:

 

Voice:

(518) 285–6000

Voice:

+44 (0)1753 848 200

Voice:

+49 (0)6142 203 400

Fax:

(518) 285–6060

Fax:

+44 (0)1753 621 140

Fax:

+49 (0)6142 203 444

Sales Info Hotline: (800) 327–8627

email:

uk@mapinfo.com

email: germany@mapinfo.com

Federal Sales: (800) 619–2333

 

 

 

 

Technical Support Hotline: (518) 285–

Toll–free telephone support is available in the U.S. and Canada.

7283 Fax: (518) 285–6080

Contact your MapInfo sales representative for details. For

international customers, please use the Technical Support Fax

 

 

 

 

number.

 

 

 

Adobe, the Adobe logo and Acrobat are trademarks of Adobe Systems Incorporated.

WARNING: This software uses patented LZW technology for .GIF image compression and/or decompression. (Unisys United States patent No. 4,558,302 and corresponding patents in Canada, France, Germany, Italy, Japan and the United Kingdom). GIF images compressed or decompressed for transmission via the Internet or via any other on–line communication capability may not be sold or licensed for revenue, or used by an Internet Service Provider or in paid advertisements unless the user first enters into a written license agreement with Unisys. For information concerning licensing, please contact: Unisys Corporation Welch Licensing Department C1SW19 Township Line & Union Meeting Roads P.O. Box 500 Blue Bell PA 19424 Fax: 215–986–3090.

The MapInfo Professional font sets were provided by Galapagos Design Group of Littleton, MA. libtiffÓ 1988-1995 Sam Leffler, copyright Ó 1991-1995 Silicon Graphics, Inc.

libgeotiffÓ 1995 Niles D. Ritter.

Portions of the software are derived from the Standard C Library, copyright 1992, by P.J.Plauger, published by PrenticeHall, and are used with permission.

Portions Copyright Ó1999 3D Graphics, Inc. All Rights Reserved.

HILÓ Media Cybernetics, Inc. 1993. Halo Imaging Library is a trademark of Media Cybernetics, Inc. LEAD Technologies, Inc. Ó 1996.

Visualization Toolkit Ó 1999. Blue Marble Ó 1993-2000. ECW by ER Mapper Ó 1999.

VMGrid by Northwood Geoscience, Ltd Ó 1995-2000. Universal Translator by Safe Software, Inc. Ó 2000.

“Crystal Reports Ò” is a proprietary trademark of Seagate Software Information Management Group (Canada) Inc. Vancouver, BC or its affiliates and is licensed to MapInfo by Seagate”

Seagate Crystal Reports CopyrightÓ 1997 (manual and software) Seagate Software, Inc. All Rights Reserved. Seagate Software, Seagate, and the Seagate logo are registered trademarks of Seagate Technology, Inc., or one of its subsidiaries. Seagate Crystal Reports, Seagate Crystal Info, the Seagate Crystal reports logo, and Smart Navigation are trademarks or registered trademarks of Seagate Software, Inc.

Products named herein may be trademarks of their respective manufacturers and are hereby recognized. Trademarked names are used editorially, to the benefit of the trademark owner, with no intent to infringe on the trademark.

This documentation was specifically produced by Gayle Patenaude, with the help of Dianne Ritter, Ed McElroy, Marie Costa, Max Morton, and Larry Strianese. Colleen Cox, Editor. Juliette Funiciello–Vunk, Associate Editor. Dave Smith, now back in Engineering, is the ‘godfather’ of this volume. The Documentation Department is indebted to MapInfo’s Quality Assurance Department and, of course, to all the members of the Product Development team that engineered this project.

MapInfo welcomes your comments and suggestions.

Август 2000

СОДЕРЖАНИЕ

Глава 1: Введение...........................................................................................

1

Требования к системе .........................................................................................

2

Установка MapBasic ...........................................................................................

3

Стандартные имена файлов и типы файлов MapBasic...................................................

3

Соглашения об обозначениях ...............................................................................

5

Глава 2: Обзор языка MapBasic......................................................................

7

Что такое среда разработчика MapBasic?..................................................................

8

Главные особенности языка MapBasic ....................................................................

10

Как осваивать MapBasic?....................................................................................

12

Глава 3: Работа в интегрированной среде разработки программ..................

15

Введение в интегрированную среду MapBasic ............................................................

16

Как ввести или отредактировать программу.............................................................

16

Компиляция программ.......................................................................................

18

Проект: Сборка приложения из нескольких модулей..................................................

20

Обзор меню среды разработки программ MapBasic......................................................

24

Глава 4: Основы языка MapBasic .................................................................

29

Общие замечания о синтаксисе языка MapBasic ........................................................

30

Переменные ....................................................................................................

32

Выражения.....................................................................................................

37

Циклы и другие управляющие операторы................................................................

46

Процедуры......................................................................................................

51

Процедуры-обрабочики системных событий.............................................................

53

Рекомендации по использованию процедур-обработчиков системных событий ..................

56

Функции, созданные пользователем ......................................................................

58

Директивы компилятора ....................................................................................

59

Организация программ.......................................................................................

61

Глава 5: Отладка и обработка ошибок..........................................................

63

Ошибки при выполнении....................................................................................

64

Отладка программ на языке MapBasic ....................................................................

64

Обработка ошибок ............................................................................................

66

Глава 6: Интерфейс пользователя................................................................

69

Создание интерфейса пользователя .......................................................................

70

Программная обработка событий..........................................................................

71

Ìåíþ ............................................................................................................

73

Стандартные диалоговые окна .............................................................................

81

Новые диалоговые окна......................................................................................

85

Îêíà .............................................................................................................

94

Инструментальные панели................................................................................

101

Запуск программы в среде MapInfo ......................................................................

109

Рекомендации по повышению производительности..................................................

111

Глава 7: Работа с таблицами......................................................................

113

Открытие таблиц с помощью MapBasic .................................................................

114

Создание файла отчета из открытой таблицы MapInfo .............................................

117

СОДЕРЖАНИЕ

 

Чтение значений из строк и колонок таблицы ........................................................

118

Запись значений в таблицу................................................................................

122

Создание новых таблиц....................................................................................

123

Изменение структуры таблицы...........................................................................

124

Работа с таблицей Selection ...............................................................................

126

Доступ к Косметическому слою с помощью таблицы “CosmeticN" ................................

128

Доступ к окнам Отчетов с помощью таблиц “LayoutN"..............................................

129

Редактирование в многопользовательской среде .....................................................

130

Файлы-компоненты таблицы ............................................................................

134

Таблицы, содержащие растровые изображения.......................................................

135

Работа с метаданными .....................................................................................

137

Работа со сшитыми таблицами...........................................................................

140

Доступ к удаленным данным .............................................................................

142

Доступ и изменения в удаленных базах данных при помощи связанных таблиц ..............

144

Прямой доступ к удаленным базам данных............................................................

144

Рекомендации по повышению производительности при работе с таблицами ...................

145

Глава 8: Ввод/вывод в файлы ....................................................................

147

Обзор файлового ввода/вывода...........................................................................

147

Файлы последовательного доступа......................................................................

149

Файлы произвольного доступа ...........................................................................

151

Двоичные файлы ............................................................................................

151

Особенности работы с файлами в различных операционных системах и с национальными

 

наборами символов .........................................................................................

152

Функции, имеющие дело с режимами файлового ввода/вывода ...................................

153

Глава 9: Графические объекты...................................................................

155

Переменные типа Object ...................................................................................

156

Работа с колонкой “Obj"...................................................................................

156

Определение атрибутов объекта..........................................................................

158

Создание новых объектов .................................................................................

163

Создание новых объектов на основе уже существующих............................................

166

Изменение объектов ........................................................................................

167

Работа с подписями.........................................................................................

169

Координаты и единицы измерения ......................................................................

173

Географические запросы ...................................................................................

176

Глава 10: Создание переносимых прикладных программ ..........................

183

Диалоговые окна............................................................................................

185

Стили графических объектов .............................................................................

186

Ìåíþ ..........................................................................................................

186

Перенос откомпилированных приложений ............................................................

187

Переносимость и строчные выражения .................................................................

187

Название файлов и DOS-маршрутов.....................................................................

187

Соглашение по чтению и записи в файлы ..............................................................

188

Глава 11: Особенности MapBasic в среде MS Windows ...............................

189

Объявление и использование динамических библиотек (DLL) .....................................

190

16-разрядные и 32-разрядные DLL ......................................................................

194

Создание пиктограмм на кнопках и новых курсоров.................................................

197

II

 

СОДЕРЖАНИЕ

Связь между приложениями с использованием DDE.................................................

200

Добавление Справочной системы к Вашему приложению...........................................

206

Глава 12: Интегрированная Картография..................................................

207

Что такое Интегрированная Картография?............................................................

208

Как выглядит приложение с Интегрированной Картой?............................................

208

Концепции Интегрированной Картографии ...........................................................

210

Технические аспекты Интегрированной Картографии ..............................................

212

Простейший пример ........................................................................................

213

Подробное обсуждение Интегрированной Картографии.............................................

213

Использование уведомляющих вызовов (Callbacks) для получения информации из MapInfo222

Другие способы использования уведомлений..........................................................

225

Справочная система ........................................................................................

226

Полезные операторы и функции языка MapBasic.....................................................

228

Объектная модель механизма управления объектами OLE .........................................

229

Аргументы командной строки MapInfo .................................................................

240

Введение в Интегрированную Картографию с поддержкой Visual C++ и MFC...................

241

Добавление кнопок и процедур-обработчиков.........................................................

246

Где получить дополнительную информацию ..........................................................

250

Приложение А: Программы из поставки....................................................

251

Приложение B: Текст программы TEXTBOX..............................................

255

Приложение C: Новости MapBasic версии 6.0.............................................

271

Приложение D: Поддержка типов данных ODBC........................................

273

Приложение E: Сохранение графики в удаленной базе данных..................

275

Индекс........................................................................................................

277

III

Введение

1

 

Глава 1: Введение

 

Добро пожаловать в среду разработчика MapBasic 6.0, мощный и одновременно простой в использовании язык программирования, который позволит Вам создавать собственные приложения в среде MapInfo Professional. В этой главе будет описана процедура установки MapBasic. Общая информация о возможностях и назначении языка MapBasic начинается с главы 2: "Обзор языка MapBasic".

В этой главе . . .

 

Требования к системе ...................................................................

3

Установка MapBasic.....................................................................

3

Стандартные имена файлов и типы файлов MapBasic ............................

3

Соглашения об обозначениях .........................................................

5

Глава 1: Введение

Требования к системе

Чтобы использовать MapBasic для Windows, Ваш компьютер должен удовлетворять

следующим требованиям:

Компонента

Обязательные требования

Операционная система

Microsoft Windows 95/98 èëè Windows NT 4.0

Дисплей

Любой, работающий с Windows.

Ìûøü

Любая мышь, работающая с Windows.

Жесткий диск

45 Мb свободного места на диске для полной

 

установки

Совместимость между версиями

Программы, созданные в ранних версиях MapBasic, будут работать под Mapinfo Professional.

Программы, созданные с помощью MapBasic 5.5/6.0, не будут работать под MapInfo 4.0.

ÂПриложении C более подробно описаны:

Новые возможности MapBasic 6.0.

2

Глава 1: Введение

Установка MapBasic

Чтобы установить среду разработчика MapBasic:

1.Вставьте компакт диск с MapInfo Pro CD дисковод.

В папке MapBasic\Disk1 запустите программу setup.exe.

2.Следуйте указаниям, появляющимся на экране.

По умолчанию MapBasic устанавливается в директорию под MapInfo (т.е. C:\MAPINFO\MAPBASIC\MAPBASIC.EXE).

Зарегистрируйтесь!

Заполните регистрационную карточку и отошлите ее в местное отделение MapInfo Corporation, чтобы получать информацию о новых версиях.

Внимание: Техническая поддержка распространяется только на зарегистрировавшихся

пользователей.

Обновление с предыдущих версий

В приложении С или справочной системе MapBasic, ознакомьтесь с новыми возможностями этой версии.

Запуск MapBasic

Чтобы запустить среду разработки MapBasic, сделайте двойной щелчок на пиктограмме MapBasic.

Mapbasic.exe

Стандартные имена файлов и типы файлов MapBasic

Процедура установки языка MapBasic переносит на Ваш компьютер следующие стандартные файлы:

ERRORS.DOC: Текстовый файл со списком сообщений об ошибках MapBasic;

MAPBASIC.EXE: Исполняемый файл, позволяющий Вам работать в среде MapBasic;

MAPBASIC.DEF: Файл заголовков, содержащий объявления стандартных переменных;

MENU.DEF: Файл заголовков, содержащий объявления стандартных переменных, относящихся к системе меню MapInfo;

ICONS.DEF: Файл заголовков, содержащий объявления стандартных переменных, относящихся к виду кнопок и курсоров в MapInfo;

MAPBASIC.H: Файл заголовков для программистов на языках C/C++; аналогичен

3

Глава 1: Введение

MAPBASIC.DEF;

MAPBASIC.BAS: Файл заголовков для программистов на языке Visual Basic; аналогичен MAPBASIC.DEF;

MAPBASIC.HLP: Справочный файл по языку MapBasic;

имя_файла.MB, имя_файла.MBP: программы-примеры; см. список этих программ в Приложении А.

При работе в среде MapBasic используются следующие стандартные расширения: имя_файла.MB: Программный файл (исходный текст на языке MapBasic);

имя_файла.MBX: Откомпилированный (выполняемый) файл;

имя_файла.MBP: Файл описания модулей (содержит список всех модулей, собираемых в единую программу);

имя_файла.MBO: Объектный файл (создается при сборке программы из нескольких модулей);

имя_файла.ERR: Список сообщений об ошибках, полученный при компиляции программы, записанной на диске.

4

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]