열 목록 상자/필터 열 선택기 데이터 테이블을 변경하는 옵션 추가때때로 사용자가 사용할 데이터 테이블을 변경할 수 있도록 하는 사용자 인터페이스를 구축하는 것이 좋을 것입니다(현재 이에 대한 제 솔루션은 데이터 테이블을 변경하는 옵션을 "절대" 추가하지 않는 것입니다). 내가 아는 한, 현재 사용하는 데이터 테이블을 변경하려면 필터 열 선택기와 열 목록 상자를 다시 만들어야 합니다.
이것이 당신이해야 할 일이라고 생각합니다.
더보기...
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Probe.jmp", invisible);
dt1 = Open("$SAMPLE_DATA/Big Class.jmp", invisible);
dt2 = Open("$SAMPLE_DATA/Semiconductor Capability.jmp", invisible);
close_dts = Expr(
Try(Close(dt, no save));
Try(Close(dt1, no save));
Try(Close(dt2, no save));
);
change_table = Expr(
cur_table = (lb << get selected)[1];
// this wont work on filter col box due to ifbox created by it
clb << Delete Box();
vlb_clb << Append(clb = Col List Box(Datatable(cur_table), all, numeric, max selected(1), nlines(5), <<MODELING type=""></MODELING>
이것이 내가 원하는 방식입니다.
더보기...
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Probe.jmp", invisible);
dt1 = Open("$SAMPLE_DATA/Big Class.jmp", invisible);
dt2 = Open("$SAMPLE_DATA/Semiconductor Capability.jmp", invisible);
close_dts = Expr(
Try(Close(dt, no save));
Try(Close(dt1, no save));
Try(Close(dt2, no save));
);
change_table = Expr(
cur_table = (lb << get selected)[1];
fcs << Set Data Table(cur_table);
clb << Set Data Table(cur_table);
);
nw = New Window("Col List Box Example",
H List Box(
lb = List Box(Get Data Table List(),
change_table
),
fcs = Filter Col Selector(Datatable(dt)),
clb = Col List Box(Datatable(dt), all, numeric, max selected(1), nlines(5), <<MODELING type=""></MODELING>
이렇게 하면 불필요한 표시 상자가 필요 없고 참조 변경이 훨씬 간단해집니다.
스크립팅