JSL 도움말 콤보 상자 변경 시 패널 상자 업데이트안녕 모두,
지원 벡터 머신의 플랫폼 인터페이스와 같은 작업을 수행하려는 일부 JSL 코드에서 작업 중입니다(Pro가 있는 사용자의 경우 스크린샷이 추가 설명에 도움이 될 것입니다).
콤보 상자가 포함된 패널 상자를 업데이트하고 콤보 상자의 사용자 선택에 따라 다른 옵션을 표시하고 싶습니다. SVM 예제에서 비슷한 작업을 하고 싶습니다. 사용자가 첫 번째 콤보 상자 옵션을 선택하면 첫 번째 스크린샷과 같이 업데이트된 패널 상자가 생성됩니다. 그런 다음 사용자가 다음 옵션을 선택하면 두 번째 스크린샷과 같이 새 옵션을 표시하도록 패널 상자가 업데이트됩니다.


콤보 상자는 On Change() 호출을 허용하지 않으며 콤보 상자가 변경되면 Function 호출이 작동하지 않는 것 같습니다. UpdateWindow 호출을 수행할 생각이지만 올바르게 수행하는 방법을 찾는 데 어려움을 겪고 있습니다.
모든 제안에 감사드립니다.
감사!,
DS
스크립팅Re: JSL 도움말 콤보 상자 변경 시 패널 상자 업데이트안녕 @ian_jmp ,
빠른 피드백과 도움에 감사드립니다. 패널 상자 전체가 아닌 일부만 변경하도록 약간 수정해야 했습니다.
이 수정된 버전은 내가 얻고자 하는 작업을 수행하는 버전이며 귀하의 코드 스니펫이 없었다면 수행할 수 없었을 것입니다. 고맙습니다!
Names Default To Here( 1 );
UInames = {"Option One", "Option Two"};
lublist = {Lineup Box( N Col( 3 ), Spacing( 3, 3 ), Text Box( "A" ), Text Box( "B" ), Number Edit Box( 7, 6 ) ),
Lineup Box( N Col( 3 ), Spacing( 3, 3 ), Text Box( "C" ), Text Box( "D" ), Number Edit Box( 10, 6 ) )};
cb = Combo Box(
UInames,
<<SETFUNCTION></SETFUNCTION>
감사!,
DS
Re: JSL 도움말 콤보 상자 변경 시 패널 상자 업데이트다음과 같이 시작할 수 있습니다.
NamesDefaultToHere(1);
UInames = {"UI One", "UI Two"};
UIList = {PanelBox(UInames[1], TextBox("One")), PanelBox(UInames[2], TextBox("Two"))};
cb = ComboBox(UInames, << SetFunction(
Function( {this, index},
(this << sib) << delete;
this << sibAppend(Eval(UIlist[index]))
)
)
);
NewWindow("Dynamic UI", LineUpBox(NCol(1), cb, Eval(UIlist[1])));