- •Оператор Add Column
- •Оператор Add Map
- •Оператор Alter Button
- •Оператор Alter ButtonPad
- •Оператор Alter Cartographic Frame
- •Оператор Alter Control
- •Оператор Alter MapInfoDialog
- •Оператор Alter Menu
- •Оператор Alter Menu Bar
- •Оператор Alter Menu Item
- •Оператор Alter Object
- •Оператор Alter Table
- •Оператор AutoLabel
- •Оператор Beep
- •Оператор Browse
- •Предложение Brush
- •Функция ButtonPadInfo( )
- •Оператор Call
- •Функция•CartesianArea( )
- •Функция CartesianBuffer( )
- •Функция CartesianDistance ( )
- •Функция CartesianObjectLen( )
- •Функция CartesianPerimeter( )
- •Функция Centroid( )
- •Предложение CharSet
- •Функция ChooseProjection$()
- •Оператор Close All
- •Оператор Close File
- •Оператор Close Table
- •Оператор Close Window
- •Функция CommandInfo()
- •Оператор Commit Table
- •Оператор Continue
- •Предложения Control Button / OKButton / CancelButton
- •Предложение Control CheckBox
- •Предложение Control EditText
- •Предложение Control GroupBox
- •Предложения Control ListBox / MultiListBox
- •Предложение Control PopupMenu
- •Предложение Control RadioGroup
- •Предложение Control StaticText
- •Функция ConvexHull( )
- •Предложение CoordSys
- •Оператор Create Arc
- •Оператор Create ButtonPad
- •Оператор Create ButtonPads As Default
- •Оператор Create Cartographic Legend
- •Функция CreateCircle( )
- •Оператор Create Ellipse
- •Оператор Create Frame
- •Оператор Create Grid
- •Оператор Create Index
- •Оператор Create Legend
- •Оператор Create Line
- •Оператор Create Map
- •Оператор Create Map3D
- •Оператор Create Menu
- •Оператор Create Menu Bar
- •Оператор Create Object
- •Оператор Create Pline
- •Оператор Create Point
- •Оператор Create Ranges
- •Оператор Create Rect
- •Оператор Create Redistricter
- •Оператор Create Region
- •Оператор Create Report From Table
- •Оператор Create RoundRect
- •Оператор Create Styles
- •Оператор Create Table
- •Оператор Create Text
- •Функция CreateText( )
- •Функция DateWindow( )
- •Оператор DDEExecute
- •Оператор DDEPoke
- •Оператор DDETerminate
- •Оператор DDETerminateAll
- •Оператор Declare Function
- •Оператор Declare Sub
- •Оператор Define
- •Оператор Delete
- •Оператор Dialog
- •Оператор Dialog Preserve
- •Оператор Dialog Remove
- •Оператор Dim
- •Оператор Do Case...End Case
- •Оператор Do...Loop
- •Оператор Drop Index
- •Оператор Drop Map
- •Оператор Drop Table
- •Оператор End MapInfo
- •Оператор End Program
- •Процедура EndHandler
- •Оператор Error
- •Оператор Exit Do
- •Оператор Exit For
- •Оператор Exit Function
- •Оператор Exit Sub
- •Оператор Export
- •Оператор Fetch
- •Оператор Find
- •Оператор Find Using
- •Предложение Font
- •Оператор For...Next
- •Процедура ForegroundTaskSwitchHandler
- •Функция FormatDate$
- •Оператор Function...End Function
- •Оператор Get
- •Оператор Global
- •Оператор Goto
- •Оператор Graph
- •Оператор If...Then
- •Оператор Import
- •Оператор Include
- •Оператор Input #
- •Оператор Insert
- •Функция Int( )
- •Функция IsPenWidthPixels()
- •Оператор Kill
- •Функция LabelFindByID( )
- •Функция LabelFindNext( )
- •Функция Labelinfo( )
- •Оператор Layout
- •Функция LegendFrameInfo( )
- •Функция LegendInfo( )
- •Функция LegendStyleInfo( )
- •Оператор Line Input
- •Процедура Main
- •Функция MakeCustomSymbol( )
- •Функция MakeFontSymbol( )
- •Оператор Map
- •Функция Map3dInfo( )
- •Оператор Menu Bar
- •Функция MenuitemInfoByID( )
- •Оператор Metadata
- •Оператор Note
- •Функция NumAllWindows( )
- •Оператор Objects Check
- •Оператор Objects Combine
- •Оператор Objects Enclose
- •Оператор Objects Erase
- •Оператор Objects Intersect
- •Оператор Objects Overlay
- •Оператор Objects Split
- •Оператор OnError
- •Оператор Open File
- •Оператор Open Report
- •Оператор Open Table
- •Оператор Open Window
- •Оператор Pack Table
- •Предложение Pen
- •Функция PenPattern()
- •Функция PenWidthToPoints()
- •Функция PointsToPenWidth()
- •Оператор Print
- •Оператор Print #
- •Оператор PrintWin
- •Оператор ProgressBar
- •Оператор Put
- •Оператор Randomize
- •Оператор ReDim
- •Оператор Register Table
- •Оператор Reload Symbols
- •Процедура RemoteMapGenHandler
- •Процедура RemoteMsgHandler
- •Оператор Remove Cartographic Frame
- •Оператор Remove Map
- •Оператор Rename File
- •Оператор Rename Table
- •Оператор Reproject
- •Оператор Resume
- •Оператор Rollback
- •Оператор Run Application
- •Оператор Run Command
- •Оператор Run Menu Command
- •Оператор Run Program
- •Оператор Save File
- •Оператор Save Window
- •Оператор Save Workspace
- •Оператор Seek
- •Процедура SelChangedHandler
- •Оператор Select
- •Оператор Server Begin Transaction
- •Оператор Server Bind Column
- •Оператор Server Close
- •Функция Server_ColumnInfo( )
- •Оператор Server Commit
- •Функция Server_Connect( )
- •Оператор Server Create Map
- •Оператор Server Disconnect
- •Функция Server_DriverInfo( )
- •Функция Server_EOT( )
- •Функция Server_Execute( )
- •Оператор Server Fetch
- •Функция Server_GetodbcHConn( )
- •Функция Server_GetodbcHStmt( )
- •Оператор Server Link Table
- •Функция Server_NumCols( )
- •Функция Server_NumDrivers( )
- •Оператор Server Refresh
- •Оператор Server Rollback
- •Оператор Server Set Map
- •Оператор Set Application Window
- •Оператор Set Area Units
- •Оператор Set Browse
- •Оператор Set Cartographic Legend
- •Оператор Set Command Info
- •Оператор Set CoordSys
- •Оператор Set Date Window
- •Оператор Set Digitizer
- •Оператор Set Distance Units
- •Оператор Set Drag Threshold
- •Оператор Set Event Processing
- •Оператор Set File Timeout
- •Оператор Set Format
- •Оператор Set Graph
- •Оператор Set Handler
- •Оператор Set Layout
- •Оператор Set Legend
- •Оператор Set Map
- •Оператор Set Map3D
- •Оператор Set Next Document
- •Оператор Set Paper Units
- •Оператор Set ProgressBars
- •Оператор Set Redistricter
- •Оператор Set Resolution
- •Оператор Set Shade
- •Оператор Set Style
- •Оператор Set Table
- •Оператор Set Target
- •Оператор Set Window
- •Оператор Shade
- •Оператор StatusBar
- •Оператор Stop
- •Функция StyleAttr( )
- •Оператор Sub...End Sub
- •Предложение Symbol
- •Оператор Terminate Application
- •Функция Time()
- •Процедура ToolHandler
- •Оператор Type
- •Оператор UnDim
- •Функция UnitAbbr$( )
- •Оператор Unlink
- •Оператор Update
- •Оператор Update Window
- •Оператор While...Wend
- •Процедура WinChangedHandler
- •Процедура WinClosedHandler
- •Процедура WinFocusChangedHandler
- •Оператор Write #
- •Приложение A: Таблица кодов символов
- •Приложение В: Арифметические и географические операторы
- •ИНДЕКС
Оператор Open Table
Оператор Open Table
Назначение:
Открывает таблицу MapInfo.
Использует новые ключевые слова Password и NoIndex для таблиц Access.
Синтаксис:
Open Table filespec [ As |
tablename ] |
[ Hide ] [ ReadOnly ] |
[ Interactive ] [ Password pwd ] [ NoIndex ] [ View Automatic ] [Deny4 |
Write ] |
|
filespec – строковая величина, задает таблицу MapInfo; |
|
tablename – имя, под которым открывается таблица; |
pwd – пароль на уровне базы данных, определяемый при включении защиты базы данных. Применяется только для таблиц Access.
Описание:
Оператор Open Table открывает уже существующую таблицу. Эффект от этого оператора такой же, как и от команды MapInfo ФАЙЛ > ОТКРЫТЬ ТАБЛИЦУ. Таблица должна быть открыта командой или оператором прежде чем MapInfo сможет производить какиеLлибо действия с таблицей.
Имя файла, который будет открыт (определяемый параметром filespec) должен соответствовать таблице, которая уже существует; для создания новой таблицы см. оператор Create Table. Заметим так же, что оператор Open Table применяется только для таблиц MapInfo; для использования файлов других форматов, используйте операторы Register Table и Open File.
Если оператор включает предложение As, MapInfo открывает таблицу под именем, задаваемым параметром tablename, которое мы будем называть “синонимом” таблицы. Следующие операторы при обращении к таблице будут использовать этот синоним. В MapInfo синонимы открываемым таблицам задаются автоматически. ИмяLсиноним далее представляет эту таблицу во всех списках MapInfo. Более того, если определен синоним для таблицы, то MapBasic должен обращаться к синониму, а не к фактическому имени таблицы вплоть до закрытия этой таблицы командой ФАЙЛ > ЗАКРЫТЬ ТАБЛИЦУ или оператором Close Table. Назначение имениLсинонима не имеет ничего общего с операцией переименования таблицы.
Если оператор включает предложение Hide, то имя таблицы не появится ни в каком диалоге, показывающем список открытых таблиц (например, в диалоге ФАЙЛ > ЗАКРЫТЬ ТАБЛИЦУ). Используйте предложение Hide если Вам надо открыть таблицу, которая останется скрытой от пользователя.
Если оператор включает предложение ReadOnly, пользователь не сможет редактировать таблицу. Дополнительное ключевое слово Interactive дает команду MapBasic подсказать пользователю место нахождения таблицы, если она не найдена по указанному пути. Ключевое слово Interactive полезно в ситуации, когда Вы не знаете местонахождения нужных файлов.
Если оператор включает ключевое слово NoIndex, индекс MapInfo не будет встраиваться в таблицу MS Access при ее открытии.
View Automatic это дополнительное предложение оператора Open Table, позволяющее таблице MapL Info, рабочему набору или файлу приложения, ассоциированному с объектом, запускаться автоматически. Если View Automatic присутствует, то после открытия таблицы, MapInfo или добавит
364 Справочник MapBasic
Оператор Open Table
ее к существующей карте или откроет новое окно кары или откроет окно списка. Особенно полезно использовать совместно с HotLinks.
DenyWrite это дополнительное предложение для таблиц MS Access, если оно используется, то другие пользователи не смогут редактировать таблицу. Если другой пользователь уже имеет доступ в режиме чтениеLзапись к таблице, команда Open Table выдаст ошибку.
Открытие двух таблиц с одинаковым именем
MapInfo может открыть две отдельные таблицы, которые имеют одно и тоже имя. В этом случае, MapL Info должно открыть вторую таблицу под специальным именем, что бы избежать конфликтов. В зависимости от того, включает ли оператор Open Table ключевое слово Interactive, MapBasic или присваивает специальное имя таблице автоматически, или показывает диалог, позволяющий пользователю интерактивно выбрать специальное имя таблицы.
Например, пользователь может хранить две копии таблицы “Sites”, одну копию в директории 1993 (“C:\1993\SITES.TAB”) и другую, возможно более новую, в другой директории (“C:\1994\SITES.TAB”). Когда пользователь (или приложение) открывает первую таблицу Sites, MapInfo открывает таблицу под ее именем (“Sites”). Если приложение использует оператор Open Table для открытия второй таблицы Sites, MapInfo автоматически открывает вторую таблицу под измененным именем (например, “Sites_2”) что бы отличать ее от первой таблицы. С другой стороны, если оператор Open Table включает предложение Interactive, MapInfo откроет диалог, позволяющий пользователю выбрать для таблицы альтернативное имя.
Не смотря на то, использует ли оператор Open Table ключевое слово Interactive, в результате таблица может быть открыта с нестандартным именем. Вслед за оператором Open Table, вызывается функция:
TableInfo(0, TAB_INFO_NAME)
для определения имени, под которым MapInfo открыло таблицу.
Открытие таблицы, которая уже открыта
Если таблица уже открыта, и оператор Open Table...As пытается заново открыть ту же таблицу под новым именем, MapBasic сгенерирует код ошибки. Одна таблица не может быть открыта под двумя различными именами одновременно.
Таким образом, если таблица уже открыта, и затем оператор Open Table пытается заново открыть таблицу без указания нового имени, MapBasic не будет генерировать код ошибки. Таблица просто остается открытой под ее текущим именем.
Пример:
Следующий пример открывает таблицу STATES.TAB, затем отображает таблицу в окне Карты. Поскольку оператор Open Table использует предложение As для открытия таблицы под псевдонимом (USA), в окне Карты появится заголовок “USA Map” а не “States Map.”
Open Table ”States” As USA
Map From USA
Следующий пример показывает вызов функции TableInfo( ) после оператора Open Table . Поскольку таблица с таким же именем (States) уже открыта, в момент запуска программы, MapBasic откроет “C:STATES.TAB” под псевдонимом (например, “STATES_2”). Функция TableInfo( ) вызовет псевдоним, под которым открыта таблица “C:STATES.TAB”.
Include ”MAPBASIC.DEF”
Dim s_tab As String
Справочник MapBasic |
365 |
Оператор Open Table
Open Table ”C:states”
s_tab = TableInfo(0, TAB_INFO_NAME)
Browse * From s_tab
Map From tab
Смотрите также:
Close Table, Create Table, Delete, Fetch, Insert, TableInfo( ), Update
366 |
Справочник MapBasic |
Оператор Open Window
Оператор Open Window
Назначение:
Открывает вспомогательные окна.
Синтаксис:
Open Window window_name
где
window_name – имя окна (например, Ruler) или код окна (например, WIN_RULER)
Описание:
Оператор Open Window используется для открытия вспомогательных окон в MapInfo. Например, следующий оператор открывает окно "Статистика", как если бы пользователь открыл его командой НАСТРОЙКИ > ПОКАЗАТЬ ОКНО СТАТИСТИКИ.
Open Window Statistics
Параметр window_name должен быть именем окна или целочисленным кодом. В следующей таблице в первой колонке приводятся имена окон, а во второй – описание и имена кодов, которые установлены в файле стандартных определений MapBasic MAPBASIC.DEF.
Значения window_name |
|
Описание окна и его код из файла MAPBASIC.DEF |
MapBasic |
|
Окно MapBasic (WIN_MAPBASIC) |
|
||
Statistics |
|
Окно "Статистика" (WIN_STATISTICS) |
Legend |
|
Окно "Легенда" (WIN_LEGEND) |
Info |
|
Окно "Информация" (WIN_INFO) |
Ruler |
|
Окно "Линейка" (WIN_RULER) |
Help |
|
Окно Справочной системы (WIN_HELP) |
Message |
|
Окно "Сообщение", используемое оператором Print |
|
|
(WIN_MESSAGE) |
Вы не можете открыть документальное окно (Карты, Графика, Списка, Геогрупп или Отчета) при помощи оператора Open Window. Эти окна открываются другими способами (смотрите операторы
Map, Graph, Browse, Layout и Create Redistricter).
Смотрите также:
Close Window, Print, Set Window
Справочник MapBasic |
367 |
Функция Overlap( )
Функция Overlap( )
Назначение:
Возвращает объект, полученный в результате географического пересечения двух объектов.
Синтаксис:
Overlap(object1, object2)
где
object1 и object2 – параметры, задающие пересекающиеся объекты, но не точечные.
Величина, полученная в результате:
Величина типа Object.
Описание:
Функция Overlap( ) вычисляет географическое пересечение двух объектов (площадь перекрытия одним объектом другого), и возвращает объект, представляющий пересечение.
MapBasic передает все стили оформления объекта object1 результирующему объекту. Если необходимо, стиль оформления объекта можно изменить на текущий в прикладной программе.
Если один из объектов является линейным (например, полилинией), а второй замкнутым (например, область), функция Overlap( ) вернет часть линейного объекта, которая находит на площадь замкнутого.
Смотрите также:
AreaOverlap( ), Erase( ), Objects Intersect
368 |
Справочник MapBasic |
Функция OverlayNodes( )
Функция OverlayNodes( )
Назначение:
Возвращает объект, созданный на основе существующего, добавлением узлов в точках пересечения со вторым объектом.
Синтаксис:
OverlayNodes(input_object, overlay_object)
где
input_object – объект, на основе которого будет создан результирующий, и который не может быть точечным;
overlay_object – объект, пересекающий объект input_object (также не может быть точечным).
Величина, полученная в результате:
Величина типа Object.
Описание:
Функция OverlayNodes( ) возвращает объект, созданный из узлов первого плюс узлы, полученные пересечением линий или контуров объектов input_object и overlay_object.
Если объект input_object замкнут (область, прямоугольник, скругленный прямоугольник или эллипс), то функция OverlayNodes( ) вернет область. Если объект input_object линейный (прямая линия, полилиния или дуга), то функция OverlayNodes( ) вернет полилинию.
MapBasic передает все стили оформления объекта input_object результирующему.
Для определения, прибавила ли функция OverlayNodes( ) несколько узлов к тем, которые были у объекта input_object, используйте функцию ObjectInfo( ). Заметим, что если объект input_object, пересекающийся с другим, уже имеет узлы в точках пересечения, то функция OverlayNodes( ) не будет добавлять новых узлов к имеющимся в input_object, то есть результирующий объект будет состоять только из тех узлов, которые были у первого объекта.
Смотрите также:
Objects Overlay
Справочник MapBasic |
369 |