<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />"새 창"에 라디오 상자와 그래프를 표시하고 있습니다.사용자가 라디오 상자에서 다른 그래프를 선택하면 이전 그래프가 삭제되고 새 그래프가 모두 같은 창에 표시되기를 원합니다.이 작업을 정확히 수행하는 방법을 잘 모르겠습니다.다음은 첫 번째 차트를 표시하는 간단한 예입니다.
dt = 열려 있는 ( "$sample_data\빅 클래스.jmp" ) ;
my_1_script = 특급 (
my_gb = 그래프 빌더 (
제어판 표시 ( 0 ) ,
변수 ( 엑스 ( : 무게 ) , 와이 ( : 키 ) ) ,
강요 ( 포인트들 ( 엑스 , 와이 , 전설 ( 1 ) ) , 더 매끄럽게 ( 엑스 , 와이 , 전설 ( 삼 ) ) )
) ;
) ;
my_2_script = 특급 (
my_gb = 그래프 빌더 (
제어판 표시 ( 0 ) ,
변수 ( 엑스 ( : 섹스 ) , 와이 ( : 나이 ) ) ,
강요 ( 히스토그램 ( 엑스 , 와이 , 전설 ( 5 ) ) )
) ;
) ;
my_3_script = 특급 (
my_gb = 그래프 빌더 (
제어판 표시 ( 0 ) ,
변수 ( 엑스 ( : 나이 ) , 와이 ( : 나이 ) ) ,
강요 (
파이 ( 엑스 , 와이 , 전설 ( 2 ) , 파이 스타일 ( "파이" ) ,
요약 통계 ( "평균" ) , 상표 ( "라벨 없음" )
)
)
) ;
) ;
차트_목록 = { "차트 1" , "차트 2" , "차트 3" } ;
//------------------------------------------------ -----------------
my_win = 새창 ( "차트 표시" ,
패널박스 ( "그래프 옵션" ,
hlistbox (
패널박스 ( "차트 선택" ,
차트_rb = 라디오박스 ( 차트_목록 ,
selected_chart = 차트_rb << 선발되다 ;
만약에 ( selected_chart == "차트 1" ,
my_1_script ,
selected_chart == "차트 2" ,
my_2_script ,
selected_chart == "차트 3" ,
my_3_script
)
)
) ,
)
) ,
// 기본값은 차트 1입니다.
my_1_script
) ;
정말 멋진 MS입니다.나는 그것이 비교적 간단하다는 것을 알고 있었지만 구문을 올바르게 얻을 수 없었습니다.감사해요!
이는 일반화하기 더 쉬울 수 있는 동일한 접근 방식을 사용하는 더 간단한 버전입니다.
차트_목록 = { "차트 1" , "차트 2" , "차트 3" } ;
스크립트_목록 = { my_1_script , my_2_script , my_3_script } ;
my_win = 새창 ( "차트 표시" ,
패널박스 ( "그래프 옵션" ,
H 목록 상자 (
패널박스 ( "차트 선택" ,
차트_rb = 라디오박스 (
차트_목록 ,
GB << 삭제 ;
my_win << 추가 ( GB = 평가 ( 스크립트_목록 [ 차트_rb << 얻다 ] ) )
) ,
)
)
) ,
// 기본값은 차트 1입니다.
GB = 평가 ( 스크립트_목록 [ 1 ])
) ;
변수 이름이 주어지면 그래프를 창에 추가하기 전에 그래프를 쉽게 삭제할 수 있습니다.
이것은 작동하는 것 같습니다:
my_win = 새창 ( "차트 표시" ,
패널박스 ( "그래프 옵션" ,
H 목록 상자 (
패널박스 ( "차트 선택" ,
차트_rb = 라디오박스 (
차트_목록 ,
selected_chart = 차트_rb << 선발되다 ;
만약에 ( selected_chart == "차트 1" ,
GB << 삭제 ;
my_win << 추가 ( GB = my_1_script ) ,
selected_chart == "차트 2" ,
GB << 삭제 ;
my_win << 추가 ( GB = my_2_script ) ,
selected_chart == "차트 3" ,
GB << 삭제 ;
my_win << 추가 ( GB = my_3_script ) ,
) ;
)
) ,
)
) ,
// 기본값은 차트 1입니다.
GB = my_1_script
) ;