HWP 목차생성 작동에 대해 스크립트 매크로를 복사해서 C++로 적용을 하려고 하는데,
Styles.Item 설정하는 예문을 C++ 코드로 적용하면 어떻게 되는지 문의 드립니다.
한글에서 Shift+Alt+L로 스크립트 정의하고 매크로를 복사한 내용 :
function OnScriptMacro_script1()
{
HAction.GetDefault(“MakeContents”, HParameterSet.HMakeContents.HSet);
with (HParameterSet.HMakeContents)
{
Level = 3;
CreateItemArray(“Styles”, 18);
Styles.Item(0) = 0;
Styles.Item(1) = 0;
Styles.Item(2) = 0;
Styles.Item(3) = 0;
Styles.Item(4) = 0;
Styles.Item(5) = 0;
Styles.Item(6) = 0;
Styles.Item(7) = 0;
Styles.Item(8) = 0;
Styles.Item(9) = 0;
Styles.Item(10) = 0;
Styles.Item(11) = 0;
Styles.Item(12) = 0;
Styles.Item(13) = 0;
Styles.Item(14) = 0;
Styles.Item(15) = 0;
Styles.Item(16) = 0;
Styles.Item(17) = 0;
StyleName = “”;
}
HAction.Execute(“MakeContents”, HParameterSet.HMakeContents.HSet);
}
해당 스크립트를 C++로 작성한 내용 :
// 목차 생성
HWPSDK::Action* act2 = m_pDocument->CreateAction(u"MakeContents");
if (act2 == nullptr)
return;
HWPSDK::ParameterSet* set2 = act2->CreateParameterSet();
act2->GetDefault(set2);
//이 부분부터 맞는지 모르겠습니다.
set2->SetInt(u"Make", 51);
set2->SetInt(u"Hyperlink", 51);
set2->CreateItemArray(u"Styles", 18);
//이 부분부터 명확히 않습니다.
Styles.Item(0) = 0;
Styles.Item(1) = 1;
Styles.Item(2) = 0;
Styles.Item(3) = 0;
Styles.Item(4) = 0;
Styles.Item(5) = 0;
Styles.Item(6) = 0;
Styles.Item(7) = 0;
Styles.Item(8) = 0;
Styles.Item(9) = 0;
Styles.Item(10) = 0;
Styles.Item(11) = 0;
Styles.Item(12) = 0;
Styles.Item(13) = 0;
Styles.Item(14) = 0;
Styles.Item(15) = 0;
Styles.Item(16) = 0;
Styles.Item(17) = 0;
StyleName = "02_본문_항목제목;";
act2->Execute(set2);
답변 부탁 드립니다. 감사합니다.