테이블 박스 행 변경 기능을위한 JMP 13.1의 버그안녕 JMP 사용자,
테이블 상자의 행 변경 기능으로 버그가 발생했습니다. 함수 내에서 다른 탭으로 포커스를 변경하려고하지만 무시됩니다. JMP 기술 지원부에 연락하여 JMP 13.2 또는 14에서 수정 될 것이라고 말했습니다. 이것은 나를위한 쇼 스토퍼 다. 다른 사람들이이 동작을 알아 차리고 해결 방법을 제시 할 수 있었는지 궁금합니다.
감사,
베드로
버그를 보여주는 프로그램은 다음과 같습니다.
nw = new window("test",
tabx = tab box(
"First Tab",
tb = table box(
scb1 = string col box("One", {"AAA", "BBB", "CCC"}),
scb2 = string col box("Two", {"XXX", "YYY", "ZZZ"}),
scb3 = string col box("Three", {"Giant", "Awesome", "Stupendous"}),
ncb = number col box("Four", {44, 33, 22}),
),
"Second Tab",
txb = text box("Nothing selected"),
),
);
tb << Set Selectable Rows(1);
tb << set row change function(
function({this},
rlist = this << get selected rows;
if (nrows(rlist) > 0,
print(rlist[1]);
txb << set text(char(rlist[1]));
tabx << set selected(2);
);
);
);제목 : Re : 테이블 박스 행 변경 기능을위한 JMP 13.1의 버그Dan 감사합니다. 그것은 rube goldberg-ish 종류의 솔루션이지만 작동합니다!
제목 : Re : 테이블 박스 행 변경 기능을위한 JMP 13.1의 버그안녕 피터,
이 문제는 JMP 13의 탭 페이지 상자에 대한 포커스 추가로 인해 발생했습니다. 탭 페이지를 클릭하면 이미 포커스가있는 경우 포커스를 얻으려고합니다. 행 변경 콜백은 두 번째 탭 페이지로 포커스를 설정하고 즉시 클릭 한 탭이 다시 훔치기 때문에 타이밍이이 경우에 문제가됩니다.
문제를 해결하려면 클릭 처리가 완료된 후 탭을 설정하는 방법이 필요합니다. 다음은 전환 할 탭 페이지의 변수를 설정 한 다음 프레임 상자 그래픽 스크립트에서 탭 페이지를 재설정하는 예제입니다. 클릭이 완료되면 바로 다음 무승부에서 발생합니다.
도움이되기를 바랍니다.
-단
tabOverride = 0;
nw = New Window( "test",
V List Box(
tabx = Tab Box(
"First Tab",
tb = Table Box(
scb1 = String Col Box( "One", {"AAA", "BBB", "CCC"} ),
scb2 = String Col Box( "Two", {"XXX", "YYY", "ZZZ"} ),
scb3 = String Col Box( "Three", {"Giant", "Awesome", "Stupendous"} ),
ncb = Number Col Box( "Four", {44, 33, 22} ),
),
"Second Tab",
txb = Text Box( "Nothing selected" ),
),
gb = Graph Box( Frame Size( 1, 1 ), XName( "" ), YName( "" ) )
)
);
Try(gb[AxisBox( 1 )] << Delete Box);
Try(gb[AxisBox( 1 )] << Delete Box);
Try(gb[Text Edit Box( 1 )] << Delete Box);
Try(gb[Border Box(1)] << Top(0) << Bottom(0) << Left(0) << Right(0));
gb[FrameBox( 1 )] << Add Graphics Script(
If( tabOverride > 0,
tabx << Set Selected( tabOverride );
tabOverride = 0;
)
);
tb << Set Selectable Rows( 1 );
tb << set row change function(
Function( {this},
rlist = this << get selected rows;
If( N Rows( rlist ) > 0,
Print( rlist[1] );
txb << set text( Char( rlist[1] ) );
tabOverride = 2;
tabx << set selected( 2 );
);
)
);
제목 : Re : 테이블 박스 행 변경 기능을위한 JMP 13.1의 버그피트,
탭과 비슷한 문제가 발생했습니다. 여러 번 특정 인서트를 삭제 한 다음 새로운 정보로 다시 빌드하여 문제를 해결했습니다. 시각적으로는 사용자에 관한 한 영향을 미치지 않으므로이 방법이 효과가 있으면 좋은 결과를 얻을 수 있습니다. 그러나 샘플 스크립트로 동일한 작업을 시도했지만 "선택"문제를 극복 할 수 없었습니다.