도형의 색상변경에서 값 조회는 되나 변경이 안되네요

var ctl=CurSelectedCtrl;
set =ctl.properties;

var sset = set.Item(“ShapeDrawFillAttr”); //서브타입 아이템 생성
var sset_txt = sset.Item(“WinBrushFaceColor”);

XHwpMessageBox.String=sset_txt;
XHwpMessageBox.DoModal();

sset.SetItem(“WinBrushFaceColor”, RGBColor(160, 180, 230)); //<< 값 변경 실패
ctl.Properties=set

안녕하세요.

set.Item으로 받아오는 값은 참조가 아닌 복사 값이기 때문에 변경한 값들을 다시 SetItem으로 지정해야 합니다.
그래서 아래처럼 한 줄만 추가하면 변경 값이 적용됩니다.

var ctl=CurSelectedCtrl;
set =ctl.properties;

var sset = set.Item(“ShapeDrawFillAttr”); //서브타입 아이템 생성
var sset_txt = sset.Item(“WinBrushFaceColor”);

XHwpMessageBox.String=sset_txt;
XHwpMessageBox.DoModal();

sset.SetItem(“WinBrushFaceColor”, RGBColor(160, 180, 230)); //<< 값 변경 실패
set.SetItem("ShapeDrawFillAttr", sset);  // <<<<< 추가
ctl.Properties=set

감사합니다.

1개의 좋아요

정말 감사합니다, 덕분에 무리없이 잘 해결하였습니다. ^^

1개의 좋아요