RUS  ENG 

Работа с MapCtrl

Страницы: 1
RSS
Работа с MapCtrl
 
День добрый.

Подскажите пожалуйста как возможно реализовать закрытие карты (которая уже открыта в объекте MapCtrl)
(помимо подключения пустого файла карты).

Также хотелось бы узнать возможно ли программное создание карты
(не используя метод SaveAs с именем нового файла в качестве параметра)

Благодарю!
 
1. Чем не устраивает MapCtrl1.MapPath = "" ?
2. Метод SaveAs карту не создает. Он сохраняет ее на диске или на сервере.
Программное создание карты как объекта в памяти возможно и без объекта MapCtrl
Map = new MapDoc а далее добавляете слои Map.layers.Add и т.д.
На диск карта может сохранятся, а может не сохранятся. Сохраняется действительно методом Map.SaveAs
 
Извините сглупил, пытался закрыть карту через MapCtrl1.Map. ...

Спасибо за разъяснение.
Еще раз извините
 
извините появился еще один вопрос.,
как программно создать пустой Файл слоя (не копируя другие слои) или сохранить созданный в памяти слой в файл?
чтобы далее можно было подключить его к карте при помощи Map.layers.Add или Map.Addlayer

Благодарю!
 
http://politerm.com.ru/zuludoc/zuluax/ZuluTools_LayerCreate.htm
 
Возможно я что то неправильно делаю но на оба варианта
eLayerType Ty = new eLayerType();
Ty = eLayerType.eMixedLayer;

ZuluCtrl ZL = new ZuluCtrl();
ZL.Tools.LayerCreate(@"C:\Zu\Layer1", "Layer 1", Ty);
_____
И

ZuluCtrlClass Zсcl = new ZuluCtrlClass();
Zсcl.Tools.LayerCreate(@"C:\Zu\Layer1", "Layer 1", eLayerType.eMixedLayer);
_____

Получаю: "Исключение из HRESULT: 0x8000FFFF (E_UNEXPECTED)"

я так понимаю что ошибка в неправильной подстановке типа слоя, как это сделать правильно?
(использую VS 2008)
 
Добрый день!
1.Метод LayerCreate принимает первые два строковых параметра Path и UserName. Во втором параметре Вы подставляете строку "Layer 1", а в первом - конструкцию @"C:\Zu\Layer1". Оператор '@' Вы с какой-то особой целью поставили ? Не в этом ли проблема ?
2. В обоих случаях Вы создаете объект ZuluCtrl (это ActiveX control, он служит для размещения на форме). Достаточно создать объект ZuluTools, ведь метод LayerCreate Вы вызываете именно у него.
 
1. @"C:\Zu\Layer1" используется для того чтобы символ "\" в пути файла (который является служебным в тексте, например \n переносит последующий текст на новую строку) а символ "@" перед текстом отключает восприятие "\" как служебного символа.

2. Благодарю, это решило проблему.

Спасибо!
 
Цитата:
1. @"C:\Zu\Layer1" используется для того чтобы символ "\" в пути файла (который является служебным в тексте, например \n переносит последующий текст на новую строку) а символ "@" перед текстом отключает восприятие "\" как служебного символа.
Как вариант, можно просто использовать "/" вместо "\".
Страницы: 1