문제
슬라이더 상자를 사용하여 연속 값을 설정하고 슬라이더를 이동할 때 현재 값을 확인하려고 합니다.
해결책
슬라이더 상자와 숫자 편집 상자를 만듭니다. 숫자 편집 상자를 업데이트하려면 슬라이더 상자에 스크립트를 추가하세요. 슬라이더 상자를 업데이트하려면 숫자 편집 상자에 스크립트를 추가하세요.
Eggs = 50;
Bacon = 50;
New Window( "Slider Display",
Border Box( Left( 10 ), Right( 10 ), top( 10 ), bottom( 10 ),
V List Box(
H List Box(
Text Box( "Eggs" ), // slider label
eggssb = Slider Box( 0, 100, Eggs, // slider script follows...
eggsnb << set( Eggs ); // update the value
// this example doesn't need any other interactive
// update. You could do some other work here, using
// the slider's value to change a graph, perhaps.
),
// text box to hold the slider's value...
eggsnb = Number Edit Box( Eggs, <<SETFUNCTION></SETFUNCTION>
Window with Slider and Edit boxes launches 2nd windowWindow with Slider and Edit boxes launches 2nd window슬라이더 및 편집 상자가 있는 창은 두 번째 창을 시작합니다.
논의
슬라이더 상자와 숫자 편집 상자의 동작은 다릅니다. 슬라이더 상자는 변수(예: 계란)를 유지하고 슬라이더가 움직일 때 해당 변수를 업데이트합니다. 슬라이더 콜백 스크립트는 변수를 직접 사용할 수 있습니다. 숫자 편집 상자는 변수를 유지하지 않으며 업데이트하지 않습니다. Eggs Number Edit의 콜백 함수는 <<
NumberEditBox 대신 TextBox를 사용하여 약간 더 간단한 변형을 만들 수 있지만 슬라이더로는 어려운 정확한 값을 입력하고 싶을 것입니다.
또한보십시오
http://www.jmp.com/support/help/Display_Boxes.shtml
도움말->도서->JSL 구문 참조
슬라이더 상자의 스크립트에서 반올림하여 정수 출력을 제공하는 슬라이더 상자를 얻을 수 있습니다.
Names Default To Here( 1 );
sliderValue = .6;
New Window("Slider", v list box(
text box("Slider box with integer output."),
slider box(
0,
10,
sliderValue,
sliderValue = round(sliderValue);
tb << Set Text( char( sliderValue ) )
),
tb = text box("")
));감사해요!
당신은 추가해야합니다
gb<<INVAL></INVAL>
두 개의 콜백 함수(계란 및 베이컨 번호 편집 상자용)에서 GraphBox에 자체를 다시 그리도록 알립니다. <<잘못된 의미 무효화하다 다시 그리기를 트리거합니다. 그래프 상자를 작성한 방식에 따라 다시 그릴 때 변경된 데이터가 선택됩니다.
안녕하세요 크레이그
좋은 게시물을 올려주셔서 감사합니다!
내가 겪고 있는 문제를 설명하기 위해 스크립트를 약간 수정했습니다.
Eggs = 50;
Bacon = 50;
New Window( "Slider Display",
Border Box( Left( 10 ), Right( 10 ), top( 10 ), bottom( 10 ),
V List Box(
H List Box(
Text Box( "Eggs" ), // slider label
eggssb = Slider Box(
0,
100,
Eggs,
gb << Set Graphics Script( Marker( {Bacon, Eggs} ) );// slider script follows...
eggsnb << set( Eggs ); // update the value
// this example doesn't need any other interactive
// update. You could do some other work here, using
// the slider's value to change a graph, perhaps.
),
// text box to hold the slider's value...
eggsnb = Number Edit Box(
Eggs,
<<SETFUNCTION></SETFUNCTION>내 문제는 숫자 편집 상자에 숫자를 입력할 때 그래프가 업데이트되지 않는다는 것입니다. "Enter" 키를 누르면 슬라이더가 이동하지만 그래프에 변경 사항이 반영되지 않습니다. 몇 가지를 시도했지만 해결 방법을 알 수 없습니다.
당신이 도울 수 있기를 바랍니다.
BR
제스퍼