ArcObjects в Delphi

ArcGIS 8.x,9.x,10.x (Arcview, ArcEditor, Arcinfo).
Ответить
AlexJL
Новоприбывший
Сообщения: 1
Зарегистрирован: 13 янв 2009, 11:00
Репутация: 0

ArcObjects в Delphi

Сообщение AlexJL »

Здравствуйте!

Возникла проблема с использованием arcobjects в Delphi 2007 (Win32).
На данный момент установлено:

ArcGIS Desktop 9.1
Service Pack 1

ArcGIS Engine Runtime 9.1
Service Pack 1

ArcGIS Engine Developer Kit 9.1
Service Pack 1

Импортированы следующие элементы управления ActiveX в Delphi:

ESRI MapControl
ESRI PageLayoutControl
ESRI TOCControl
ESRI ToolBarControl

Далее пытаюсь реализовать простейший пример загрузки карты в MapControl или PageLayoutControl

...

sFileName := '.\testmap.mxd';

if FileExists(sFileName) then
If PageLayoutControl1.CheckMxFile(sFileName) Then
PageLayoutControl1.LoadMxFile(sFileName);
...

После чего возникает ошибка "Invalid Floating Point operation", причем CheckMxFile выдает положительный результат.

Помогите разобраться с данной проблемой.
Зарание спасибо.
ultradu
Новоприбывший
Сообщения: 4
Зарегистрирован: 26 янв 2009, 23:06
Репутация: 0

Re: ArcObjects в Delphi

Сообщение ultradu »

Я давно пытался - мучался с delphei, сейчас рисую на C#

но не помню, чтобы задавал так путь к проекту -
sFileName := '.\testmap.mxd';
pooperec
Интересующийся
Сообщения: 30
Зарегистрирован: 02 апр 2009, 11:12
Репутация: 0

Re: ArcObjects в Delphi

Сообщение pooperec »

Начал разбираться, возникла проблема, при добавлении визуальных компонентов TOCControl, MapControl LicenseControl в свойствах компонента TOCControl неактивен пункт Buddy, через который происходит связь ТОС и Мапконтрола. Сейчас пытаюсь переопределить Buddy и инициализировать карту "вручную". Кто-то сталкивался с данной проблемой?
pooperec
Интересующийся
Сообщения: 30
Зарегистрирован: 02 апр 2009, 11:12
Репутация: 0

Re: ArcObjects в Delphi

Сообщение pooperec »

Разобрался, необходимо вручную задавать Buddy при создании формы:

Код: Выделить всё

TOCControl1.SetBuddyControl(MapControl1.Object_);
ToolBarControl1.SetBuddyControl(MapControl1.Object_);
Возникло несколько вопросов (без особой надежды на ответ, но всё же):

1. Нету ли другого пути к полному списку слоев в обход IEnumLayer?
2. Как от ILayer перейти к IGeoFeatureLayer?
Ответить

Вернуться в «ArcGIS»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость