안녕하세요, 저는 JMP Pro Application Builder에서 스크립팅을 하고 있습니다.
- 보조 창으로 이동하는 버튼이 있는 기본 창이 있습니다. 보조 창에는 사용자가 값을 입력하는 텍스트 편집 상자가 있습니다. 또한 이 보조 창에는 값을 appNS에 저장하고 보조 창을 닫는 닫기 버튼이 있습니다.
- 기본값이 0이 되도록 기본 창에서 변수를 초기화했습니다. 기본값 대신 새 창에서 업데이트된 값을 사용하도록 변수를 가져오는 데 문제가 있습니다. 함수를 실행한 다음 업데이트된 값을 인쇄하는 대신 기본값을 즉시 인쇄합니다. 도움을 주시면 감사하겠습니다.
다음은 참조용 코드 스니펫입니다(PredictiveModeling은 기본 창이고 OptimizeModelWindow는 보조 창입니다).
appNS: ParamList1 = 0;
appNS: ParamList2 = 0;
appNS: ParamList3 = 0;
appNS: ParamList4 = 0;
appNS: ParamList5 = 0;
appNS: ParamList6 = 0;
OptimizeParamsButtonPress = Function( {this}, // This function is called when the OptimizeParams button is pressed on the PredictiveModeling Window
name = this << Get Button Name;
OptimizeModelWindow << Create Instance(thisModuleInstance);
Wait(OptimizeModelWindow);
PList1 = appNS: ParamList1;
PList2 = appNS: ParamList2;
PList3 = appNS: ParamList3;
PList4 = appNS: ParamList4;
PList5 = appNS: ParamList5;
PList6 = appNS: ParamList6;
Print(PList1,PList2,PList3,PList4,PList5,PList6);
);
EditBox에서 변수를 읽고 기본값을 업데이트하는 곳입니다...
doOptimizeParams = Function ( {},
HP1 = PEdit1 << Get Text;
appNS: ParamList1 = HP1;
HP2 = PEdit2 << Get Text;
appNS: ParamList2 = HP2;
HP3 = PEdit3 << Get Text;
appNS: ParamList3 = HP3;
HP4 = PEdit4 << Get Text;
appNS: ParamList4 = HP4;
HP5 = PEdit5 << Get Text;
appNS: ParamList5 = HP5;
HP6 = PEdit6 << Get Text;
appNS: ParamList6 = HP6;
);
CloseOptimizeButtonPress = Function( {this},
// This function is called when the Optimize button is pressed on the popup OptimizeModel window
name = this << Get Button Name;
doOptimizeParams();
Print(ParamList1,ParamList2,ParamList3,ParamList4,ParamList5,ParamList6);
(thisModuleInstance << GetBox) << Close Window;
);