Интеграция инструментальных панелей Maplnfo краткий вводный курс.
Вы не можете переподчинить стандартные инструментальные панели MapInfo. Если Вы хотите, чтобы Ваша клиентская программа имела такие панели вы должны сами создать панели и кнопки на Delphi (например используя Tpanel и Tbutton) и их обработчике посылать специальные команды MapInfo для того что-бы MapInfo включало или переключала режимы работы (например с выбора объекта на перемещения окна карты (ладошка)).
Если Вы хотите, чтобы кнопка панели эмулировала стандартную кнопку MapInfo, используйте метод MapInfo Run Menu Command.
Например в обработчике OnClick пропишите следующею команду KDMapInfoServer1.ExecuteCommandMapBasic('Run Menu Command 1702',[]); Когда пользователь нажмет на эту кнопку, программа вызывовет метод MapInfo - Run Menu Command, который активизирует инструмент под номером 1702 (инструмент перемещение карты "рука" ).
"Магический" номер 1702 ссылается на инструмент "рука" служащий для перемещения (сдвига) карты.
Вместо того, чтобы использовать такие числа. Вы можете использовать идентификаторы, более понятные в тексте программы. MapBasic определяет стандартный идентификатор M_TOOLS_RECENTER который имеет значение 1702. Таким образом, этот пример можно записать так: KDMapInfoServer1.ExecuteCommandMapBasic('Run Menu Command %S', [M_TOOLS_RECENTER]); Использование идентификаторов (типа M_TOOLS_RECENTER) делает Вашу программу более читательной, но перед использование вы должны включить в программу (в Uses) соответствующий заголовочный файл MapBasic. Для Delphi я положил файл Global.pas (содержимое файла опубликовано в приложении 1).
В следующей таблице приведены кратко идентификаторы основных инструментальных кнопок MapInfo (для более побробной информации смотрите документацию по MapBasic).
Кнопки панели Операции | Номер | Идентификатор | Прим. |
Выбор | 1701 | М_TOOLS_SELECTOR | Панель ОПЕРАЦИИ |
Выбор в прямоугольнике | 1722 | M_TOOLS_SEARCH_RECT | Панель ОПЕРАЦИИ |
Выбор в круге | 1703 | M_TOOLS_SEARCH_RADIUS | Панель ОПЕРАЦИИ |
Выбор в области | 1704 | M_TOOLS_SEARCH_BOUNDARY | Панель ОПЕРАЦИИ |
Увеличивающая лупа | 1705 | M_TOOLS_EXPAND | Панель ОПЕРАЦИИ |
Уменьшающая лупа | 1706 | M_TOOLS_SHRINK | Панель ОПЕРАЦИИ |
Ладошка (рука) | 1702 | M_TOOLS_RECENTER | Панель ОПЕРАЦИИ |
Информация | 1707 | M_TOOLS_PNT_QUERY | Панель ОПЕРАЦИИ |
Подпись | 1708 | M_TOOLS_LABELER | Панель ОПЕРАЦИИ |
Линейка | 1710 | M_TOOLS_RULER | Панель ОПЕРАЦИИ |
Переноска | 1734 | M_TOOLS_DRAGWINDOW | Панель ОПЕРАЦИИ |
Символ | 1711 | M_TOOLS_POINT | Панель ПЕНАЛ |
Линия | 1712 | M_TOOLS_LINE | Панель ПЕНАЛ |
Полилиния | 1713 | M_TOOLS_POLYLINE | Панель ПЕНАЛ |
Дуга | 1716 | M_TOOLS_ARC | Панель ПЕНАЛ |
Полигон | 1714 | M_TOOLS_POLYGON | Панель ПЕНАЛ |
Эллипс | 1715 | M_TOOLS_ELLIPSE | Панель ПЕНАЛ |
Прямоугольник | 1717 | M_TOOLS_RECTANGLE | Панель ПЕНАЛ |
Прямоугольник скругленный | 1718 | M_TOOLS_ROUNDEDRECT | Панель ПЕНАЛ |
Текст| | 1709 | M_TOOLS_TEXT | Панель ПЕНАЛ |
Рамка | 1719 | M_TOOLS_FRAME | Панель ПЕНАЛ |