안녕하세요.
표 캡션 관련하여 추가 질문 드립니다.
아래 코드를 실행해 보면
캡션이 없던 표에 캡션이 만들어 집니다.
function OnScriptMacro_script17()
{
var myCtrl = HeadCtrl;
while (myCtrl)
{
if (myCtrl.CtrlID == "tbl")
{
SetPosBySet(myCtrl.GetAnchorPos(0));
FindCtrl();
HAction.GetDefault("TablePropertyDialog", HParameterSet.HShapeObject.HSet);
XHwpMessageBox.String = HParameterSet.HShapeObject.ShapeCaption.Side;
XHwpMessageBox.DoModal();
HAction.Execute("TablePropertyDialog", HParameterSet.HShapeObject.HSet);
}
myCtrl = myCtrl.Next;
}
}
즉, HParameterSet.HShapeObject.ShapeCaption.Side값을
조회(read)만 해도
HAction.Execute("TablePropertyDialog", HParameterSet.HShapeObject.HSet);
가 실행되면서
그 값이 설정(write)되는 것 같습니다.
아래 부분(메시지 박스 부분)을 없앤 후(값을 조회하지 않고) 실행하면
표의 캡션에 변화가 없습니다.
XHwpMessageBox.String = HParameterSet.HShapeObject.ShapeCaption.Side;
XHwpMessageBox.DoModal();
- ps.
지난 글의 답변에서
HParameterSet.HShapeObject.ShapeCaption.Side = 0xFF;
라고 방법을 소개해 주셨는데
HParameterSet.HShapeObject.ShapeCaption.Side값이
0~3 이 아니라도
HAction.Execute("TablePropertyDialog", HParameterSet.HShapeObject.HSet);
줄이 실행되면서 표의 왼쪽에 캡션이 만들어 집니다.