2011-11-30 4 views
2

확인란이있는 여러 열이 포함 된 테이블이 있습니다. 때로는 내 코드가 열을 제거하고 새 열을 만들어야합니다. 다음 코드를 통해이 작업을 수행 할 때테이블 편집기 구성 요소가있는 열 제거

int columnscount = myTable.getColumnCount(); 

//remove the columns 
for(int i=2;i<columnscount;i++){ 
    myTable.getColumn(2).dispose(); 
} 

모든 열은 제거되었지만 확인란은 선택되지 않았습니다. 편집기 구성 요소를 제거하려면 어떻게합니까? 그들은이 코드를 사용하여 만든

TableEditor editor = new TableEditor (myTable); 
editor.minimumWidth = checkButton.getSize().x; 
editor.horizontalAlignment = SWT.CENTER; 
editor.setEditor(checkButton, ti, colCheckCount); 
+0

SSCCE 시간. 문제가있는 작은 프로그램 자체 충분한 프로그램. – sethu

+1

스윙이나 SWT입니까? –

+0

Eclipse에서 SWT를 사용하고 있습니다. – Robbert

답변

2

removeColumn 방법 호출하여 스윙의 JTable되어에서 열을 제거하는 적절한 방법 :

table.removeColumn(table.getColumnModel().getColumn(0));

그러나주의하시기를, 이것은 단지보기에서 열을 제거하기 때문에 기본 데이터를 제거하지 않고

+2

다른 방법은 제거하기 위해 TableModel에 알려주는 것입니다 (즉, 해당 열을 반환하지 않음) –

1

나는 내가 한 방식을 바꾸기로 결정했다. 내 열을 삭제하는 대신 전체 테이블을 폐기하고 다시 작성했습니다. 훌륭하게 작동합니다.

관련 문제