RUS  ENG 

редактирование режима

Страницы: 1
RSS
редактирование режима
 
Добрый день
Я пытаюсь программно изменить стиль и толщину линии в структуре слоя(режим)
Почему не работаем следующий участок - абсолютно никаких изменений:
MapCtrl1.Map.Layers.item[7].ObjectTypes.Item[6].Modes.Item[1].ElemStyle.Linewidth:=1;
MapCtrl1.Map.Layers.item[7].ObjectTypes.Item[6].Modes.Item[1].ElemStyle.Linestyle:=1;
Если такие же строки прописываю при создании линии - все устанавливается правильно.
Интересно другое что срабатывает только такая строка
MapCtrl1.Map.Layers.item[7].ObjectTypes.Item[6].Modes.Item[1].Name:=имя;
на две другие:
MapCtrl1.Map.Layers.item[7].ObjectTypes.Item[6].Modes.Item[1].ElemStyle.Linewidth:=1;
MapCtrl1.Map.Layers.item[7].ObjectTypes.Item[6].Modes.Item[1].ElemStyle.Linestyle:=1;
никакой реакции нет:-)
Может при редактировании линии(существующего режима) нужно вызывать дополнительно какую-то строку???
Зарание благодарен
 
Там путь немножко длиннее. Сперва получаем стиль, заполняем его и обратно присваиваем.

var es: IElemStyle;

es := MapCtrl1.Map.Layers.item[7].ObjectTypes.Item[6].Modes.Item[1].ElemStyle;
es.Linewidth:=1;
es.Linestyle:=1;
MapCtrl1.Map.Layers.item[7].ObjectTypes.Item[6].Modes.Item[1].ElemStyle := es;
Страницы: 1