이 GUI가 있고 내가 만든 행이 있습니다.
내가하고있는 일은 행 상태 핸들러를 사용하여 누군가가 그래프에서 매핑 된 모양을 선택할 때 감지하는 것입니다.
실제로 선택한 행이 표시됩니다.
이제 해당 그래프에도 2개의 도우미 "맵 모양"이 있습니다. 기본 그래프에서 무언가를 선택할 때 도우미 그래프에서도 강조 표시해야 합니다.
이것이 내 코드이고 1 또는 2로 라이브 업데이트되도록 선택하여 다음과 같은 몇 줄을 더 추가할 수 있습니다.
선택한 행과 동일한 키 이름을 가진 helper_rows를 가져오고 사용자가 관련되어 있음을 알 수 있도록 선택하면 다음 단계에 있는 하위 집합에 대해 가져올 수 있습니다.
그래서 내 계획:
1. 테이블의 모든 행 목록 가져오기 이보다 더 나은 방법이 있어야 합니다...
all_rownums = subset_JMP_Master_Table << GetRowsWhere (:Name != -99999);
2. 행 상태 처리기 내부: 선택한 행 가져오기
3. 전체 행 목록에서 선택한 행을 빼시겠습니까? 2개의 목록을 가져옵니다. 하나는 선택된 행이고 다른 하나는 선택되지 않은 행입니다.
4. 선택된 컬럼에 선택된 플래그를 1 또는 2로 할당합니다.
5. 키 이름 + 선택한 열 = 1을 기반으로 한 도우미 행 조회
6. 도우미 행도 선택하고 다음 단계를 위해 전체를 부분집합합니다.
subset_JMP_Master_Table << New Column( "selected",
Numeric
, Ordinal
,set each value(0)
);
all_rownums = subset_JMP_Master_Table << GetRowsWhere (:Name != -99999);
//rows_in_subset_table = subset_JMP_Master_ Table << Select All Rows;
//show(rows_in_subset_table);
select_sync_rsh = subset_JMP_Master_Table << MakeRowStateHandler(
Function(
{a}
,if(
select_sync_script_on
,( //start doing things based on script
print(a);
r = subset_JMP_Master_Table << get selected rows;
Column(subset_JMP_Master_Table, "selected")[r] = 1;
q = subset_JMP_Master_Table << GetRowsWhere (:selected != 1);
Column(subset_JMP_Master_Table, "selected")[q] = 2;
)//end doing things based on script
)// end if
); //end function
);
구문을 사용할 수도 있습니다. 1::n 행렬을 생성하려면:
subset_JMP_Master_Table=current data table();
b = 1::nrows(subset_JMP_Master_Table);
나는 당신이 당신의 rownum 행렬을 얻을 수 있다고 생각합니다.
subset_JMP_Master_Table=current data table();
all_rownums = index(1,nrows(subset_JMP_Master_Table));
subset_JMP_Master_Table << New Column( "selected", Numeric, Ordinal, set each value( 0 ) );
fhg = N Rows( subset_JMP_Master_Table );
all_rownums = subset_JMP_Master_Table << GetRowsWhere( :Name != -99999 );
//rows_in_subset_table = subset_JMP_Master_ Table << Select All Rows;
//show(rows_in_subset_table);
select_sync_rsh = subset_JMP_Master_Table << MakeRowStateHandler(
Function(
{a}
,
If(
select_sync_script_on
,
(//start doing things based on script
Print( a ) ;
subset_JMP_Master_Table:selected << Set Each Value( 2 ) ; // just blanket set everything to 2
curr_selected_rows = subset_JMP_Master_Table << get selected rows ; // get the selected rows
subset_JMP_Master_Table:selected[curr_selected_rows] = 1 ; //update the selected rows to 1
)//end doing things based on script
)// end if
); //end function
); //end row state handler