10 개의 열이있는 JTable이 있습니다. 동적으로 생성 된 10 개의 JCheckbox를 정렬하고 JTable 위의 한 행에 정렬해야합니다. 각 JCheckboxes 왼쪽 위치를 각 셀 x 좌표의 jtable 첫 행에 맞 춥니 다.런타임시 JTable 위의 JCheckBox를 정렬하는 방법, 각 셀 x 좌표의 첫 번째 행을 정렬 하시겠습니까?
자바 스윙 GUI 외관 : JInternalFrame-> with two JScrollpanes
(상위 & 아래)
최고 지역 : JScrollpane->JPanel->JCheckbox's
(10 확인란)
바닥 면적 : JScrollpane->JTable
(10 열) 여기
내가 준비 할 각 체크 상자 x는 각 셀 x 좌표의 테이블과 일치합니다.
아래 코드를 시도했지만 작동하지 않습니다. (테이블의 5 열 너비로 덮여있는 10 개의 확인란)
테이블의 열 개수 및 확인란 만들기는 동적이며 필요에 따라 변경됩니다.
panel.setPreferredSize(new Dimension(scrollpane.getPreferredSize().width, scrollpane.getPreferredSize().height));
int intColCount=table.getColumnCount();
int intX=0;
JCheckBox checkboxTop[] = new JCheckBox[intColCount];
JCheckBox checkboxBottom[] = new JCheckBox[intColCount];
for(int i=0;i<intColCount;i++){
intX = (int)table.getCellRect(0, i, true).getX();
checkboxTop[i]= new JCheckBox("Top "+(i+1));
panel.add(checkboxTop[i]);
checkboxTop[i].setBounds(intX, 10, 50, 10);
checkboxBottom[i]= new JCheckBox("Bottom "+(i+1));
panel.add(checkboxBottom[i]);
checkboxBottom[i].setBounds(intX, 30, 50, 10);
}
panel.setPreferredSize(new Dimension(intColCount*(int_each_cell_width), panel.getPreferredSize().height));
수있는 일주 몇 가지 아이디어 ... 논리를 공유하는 모든 사람에게
그리고 열 크기가 변경되면? 체크 박스를 재정렬 하시겠습니까? 테이블의 ColumnModel에 연결된 레이아웃 관리를 직접 작성해야 할 것입니다 ... – MadProgrammer
예 테이블의 열 개수와 확인란이 동적이며 필요할 때마다 변경됩니다. – Jeet
모델에 대한 변경을 모니터링하기 위해 TableModel의 TableModelListener 및 테이블에 수신기를 연결해야합니다. – MadProgrammer