JTable의 다중 행 선택
편집할 수 없는 텍스트와 부울 확인란이 포함된 JTable에 직면하면 모든 상자를 선택 취소하는 것이 바람직합니다. 그 중 하나가 선택 취소되어 있으면 선택 상태에 있고 그 반대도 마찬가지입니다.
이 동작을 용이하게 하려면 아래 예를 고려하십시오.
import java.awt...; import javax.swing...; public class CheckABunch extends JPanel { // Constants and variables for data model and JTable setup private static final int CHECK_COL = 1; private static final Object[][] DATA = {...}; private static final String[] COLUMNS = {...}; private DataModel dataModel = ...; private JTable table = ...; private DefaultListSelectionModel selectionModel; // Constructor initializes the interface and selection model public CheckABunch() { super(new BorderLayout()); ... table.setPreferredScrollableViewportSize(...); selectionModel = ...; } // DataModel provides custom column classes and editability private class DataModel extends DefaultTableModel { public DataModel(Object[][] data, Object[] columnNames) {...} public Class<?> getColumnClass(int columnIndex) {...} public boolean isCellEditable(int row, int column) {...} } // ControlPanel contains buttons for selecting and clearing private class ControlPanel extends JPanel { public ControlPanel() {...} } private class SelectionAction extends AbstractAction { boolean value; public SelectionAction(String name, boolean value) {...} public void actionPerformed(ActionEvent e) {...} } // Main method for creating and displaying the interface public static void main(String[] args) {...} }
이 예에서 SelectionAction은 버튼 클릭을 처리하여 사용자의 선택에 따라 확인란을 업데이트합니다. dataModel은 체크박스 열이 편집 가능하고 올바른 유형인지 확인합니다.
이 접근 방식을 사용하면 JTable에서 여러 행 체크박스 선택 및 동기화를 쉽게 구현할 수 있습니다.
위 내용은 JTable에서 여러 행 확인란 선택을 동기화하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!