- •Оператор 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: Таблица кодов символов
- •Приложение В: Арифметические и географические операторы
- •ИНДЕКС
Оператор Create Arc
Оператор Create Arc
Назначение:
Создает объект типа “дуга”.
Синтаксис:
Create Arc
[ Into { Window window_id | Variable var_name } ] (x1, y1) (x2, y2)
start_angle end_angle
[Pen... ]
где
window_id – идентификатор окна, целое число; var_name – имя объектной переменной;
x1, y1 – координаты одного угла минимального прямоугольного покрытия (МПП), прямоугольника, описывающего дугу;
x2, y2 – координаты противоположного по диагонали угла МПП дуги; start_angle – значение начального угла дуги, в градусах;
end_angle – значение конечного угла дуги, в градусах;
Pen – слово, с которого начинается стандартное предложение для назначения стиля линии.
Описание:
Результатом действия оператора Create Arc является новый объект типа "дуга".
Если оператор использует предложение Into Variable, то созданный объект "дуга" объявляется как значение объектной переменной. Если слово Into указывает окно, объект помещается на подготовленное место в окне (например, в изменяемый слой). Если Into вообще нет в операторе, MapBasic попробует создать дугу в самом верхнем окне. Если это невозможно (например, поверх всех окон лежит окно Графика), то объект не будет создан.
Параметры x и y являются координатами в той системе координат, которая была объявлена до оператора Create Arc, например, оператором Set CoordSys. Если система не объявлялась, то координаты будут принимать значения широты и долготы. При этом надо учесть, что MapBasic игнорирует координатную систему самого окна Карты.
Если объект создается для окна Отчета, параметры x и y интерпретируются как координаты на листе в объявленных ранее единицах измерения листа (смотрите описание оператора Set Paper Units). Так XLкоордината – это расстояние от левого края листа до точки, и YLкоордината – расстояние от верхнего края листа. Перед созданием объекта в окне Отчета не забудьте выполнить оператор Set
CoordSys Layout.
Если в операторе нет предложения Pen, MapBasic, создавая дугу, будет использовать установку соответствующего режима для стиля линии в MapInfo (стиль линии можно изменить командой НАСТРОЙКА > СТИЛЬ ЛИНИЙ).
Смотрите также:
Insert, Pen, Update
Справочник MapBasic |
107 |
Оператор Create ButtonPad
Оператор Create ButtonPad
Назначение:
Создает инструментальную панель. Синтаксис:
Create ButtonPad { title_string | ID pad_num }
As button_definition [ button_definition ... ] [ Title title_string ]
[ Width w ]
[ Position (x, y) [ Units unit_name ] ] [ ToolbarPosition ( row , column ) ]
[ { Show | Hide } ]
[ { Fixed | Float } ]
где
title_string – заголовок инструментальной панели;
pad_num – идентификатор стандартной инструментальной панели (1 – для панели "Операции", 2 – для панели "Пенал", 3 – для панели "Программы", 4 – ”Команды”, 5 – “ODBC”);
w – ширина панели в количестве кнопок, которые можно разместить по горизонтали; x, y – координаты верхнего левого угла панели в "бумажных" единицах измерения; unit_name – имя "бумажной" единицы (например, "in" – дюйм, "cm" – сантиметр);
row, column – координаты инструментальной панели, когда она находится в прикрепленном состоянии (docked); например, координаты 0, 0 означают расположение строки инструментов прижатой к левому и верхнему краям рабочего окна, а 0, 1 задают положение панели второй строкой).
Каждый параметр button_definition может быть либо ключевым словом Separator, либо конструкцией следующего синтаксиса:
{ PushButton | ToggleButton | ToolButton }
Calling { procedure | menu_code | OLE methodname | DDE server , topic } [ ID button_id ]
[ Icon n [ File file_spec ] ]
[ Cursor n [ File file_spec ] ] [ DrawMode dm_code ]
[ HelpMsg msg ]
[ ModifierKeys { On | Off } ] [ Enable | Disable ]
[ Check | Uncheck ]
где
procedure – обработчик, вызываемый нажатием на кнопку. Обработчиком может быть subLпроцедура или стандартный в MapInfo код (например, M_FILE_OPEN из MENU.DEF);
menu_code – стандартный в MapInfo код команды из MENU.DEF (например, M_FILE_OPEN); MapInfo начнет выполнение команды, как только пользователь нажмет на кнопку;
methodname – строковая величина, задающая имя OLELметода;
server, topic – строковая величина, задающая DDELсервера и имя темы (topic).
Предложение ID button_id задает кнопке уникальный номер, который можно будет потом использовать как ее идентификатор, в случае, если несколько кнопок вызывают один обработчик, а также в операторе Alter Button.
108 |
Справочник MapBasic |
Оператор Create ButtonPad
Предложение Icon n задает картинку, которая будет на кнопке. Здесь n может быть одним из специальных кодов из файла ICONS.DEF (например, MI_ICON_RULER). Подпредложение File file_spec задает файл ресурсов изображений, в этом случае параметр n должен быть целочисленным идентификатором одного из ресурсов файла file_spec.
Предложение Cursor n задает форму, которую примет указатель мыши после выбора кнопки. Здесь n может быть одним из специальных кодов из файла ICONS.DEF (например, MI_CURSOR_ARROW). Это предложение может входить в описание кнопки инструмента (тип ToolButtons). Подпредложение File file_spec задает файл ресурсов изображений, в этом случае параметр n должен быть целочисленным идентификатором одного из ресурсов файла file_spec.
Предложение DrawMode dm_code задает возможность инструмента рисовать (использование возможности передвигать мышку с нажатой клавишей) или только указывать (использование только возможности нажимать на клавишу мышки), при этом параметр dm_code должен быть одним из специальных кодов из файла ICONS.DEF (например, DM_CUSTOM_LINE). Это предложение может входить в описание кнопки инструмента (тип ToolButtons).
Предложение HelpMsg msg задает текст подсказки, которая появляется в строке сообщений при указании на кнопку, а таже может задавать текст для плавающей подсказки ToolTip. Первая часть строки msg используется строкой сообщений. Если величина msg включает в себя литеры \n, то текст, следующий за ними, используется подсказкой ToolTip. Параметр msg должен иметь тип String.
Предложение ModifierKeys управляет использованием клавиш SHIFT и CTRL в режиме рисования, сопровождающемся прорисовковкой образа объекта ("rubberband"), инструментом кнопки типа ToolButton. По умолчанию используется режим Off, не использующий клавиши SHIFT и CTRL.
Описание:
Оператор Create ButtonPad создает новую инструментальную панель. Созданную панель Вы можете по ходу выполнения программы изменять при помощи операторов Alter Button и Alter But4 tonPad.
Инструментальная панель может прятаться. Для создания инструментальной панели в скрытом состоянии используйте ключевое слово Hide.
Инструментальная панель может показываться на экране в одном из двух состояний: плавающем (“floating”) – в виде вспомогательного окна и строкой (“docked”) – вытянутой в полоску и прижатой к верхнему краю рабочего окна. Если Вы хотите, чтобы созданная панель была зафиксирована у верхнего края окна, то используйте ключевое слово Fixed. Для показа панели вспомогательным окном используется слово Float.
Если панель плавающая, то ее положение на экране задается предложением Position. Если панель показывается сторокой, то предложением ToolbarPosition.
Другую информацию об инструментальных панелях смотрите в описании оператора Alter Button4 Pad. Инструментальные панели также описаны в 6 главе Руководства пользователя MapBasic.
Режимы предложения Calling
Предложение Calling задает, что должно случиться, если пользователь нажмет на кнопку инструментальной панели. Приведем возможные примеры использования этого предложения:
Примеры |
Описание |
|
|
Справочник MapBasic |
109 |
Оператор Create ButtonPad
Calling |
M_FILE_NEW |
Если за словом Calling идет целочисленный код из |
|
|
файла MENU.DEF, MapInfo запускает на выполнение |
|
|
соответствующую стандартную команду MapInfo |
|
|
(например, ФАЙЛ > НОВАЯТАБЛИЦА). |
|
|
|
Calling |
my_procedure |
Если задано имя subLпроцедуры, MapInfo передает |
|
|
управление этой процедуре. Эта процедура должна |
|
|
быть частью программы MapBasic, создавшей эту |
|
|
инструментальную панель. |
Calling OLE ”methodname” |
Только для Windows. MapInfo управляет событиями, |
|
|
|
обращаясь с именем метода к объекту OLE Automation, |
|
|
усановленному SetCallbackLметодом MapInfo. Детали |
|
|
смотрите в 12 главе Руководства пользователя MapBa |
|
|
sic. |
|
|
|
Calling DDE ”server”,”topic” |
Только для Windows. MapInfo управляет событиями, |
|
|
|
присоединясь через DDE к паре “сервер|тема” и |
|
|
посылая выполняемое сообщение на DDELсервер. |
|
|
|
В последних двух случаях строка послания для OLE или DDE сервера должна начинаться с трех символов “MI:” для того, чтобы сервер смог определить, что послание пришло от MapInfo. Остальная часть этой строки состоит из разделенного запятыми списка значений возврата функций с Com4 mandInfo(1) по CommandInfo(8). Детали читайте в 12 главе Руководства пользователя MapBasic.
Пример:
Create ButtonPad "Новые Кнопки" As
PushButton
HelpMsg "Нажмите на эту кнопку для вывода диалога запроса"
Calling button_sub_proc
Icon MI_ICON_ZOOM_QUESTION
ToolButton
HelpMsg "Используйте этот инструмент для рисования
нового маршрута"
Calling tool_sub_proc
Icon MI_ICON_CROSSHAIR
DrawMode DM_CUSTOM_LINE
ToggleButton
HelpMsg "Переключение показа расстояний" Calling toggle_prox_check
Icon MI_ICON_RULER Check
Title "Средства" Width 3
Show
Смотрите также:
Alter Button, Alter ButtonPad
110 |
Справочник MapBasic |