JTable에서 비연속 셀 선택을 활성화하는 방법
표준 JTable 구현에서 사용자는 연속 셀 그룹만 선택할 수 있습니다. 그러나 개별적이고 비연속적인 셀 선택을 허용하도록 이 동작을 사용자 정의하는 방법이 있습니다.
방법 1: CTRL 수정자 사용
JTable의 선택 모드가 ListSelectionModel.SINGLE_SELECTION으로 설정되어 있습니다. CTRL 키를 누른 채 비연속 셀을 클릭하면 해당 셀이 선택됩니다.
방법 2: processMouseEvent 메서드 재정의
선택 동작을 더 효과적으로 제어하려면 JTable 하위 클래스의 processMouseEvent 메서드를 재정의할 수 있습니다. 재정의된 메서드에서는 수정자를 수정하여 마우스 이벤트를 처리하는 동안 Ctrl 키가 눌려져 있음을 JTable에 알릴 수 있습니다.
다음은 예제 코드 조각입니다.
public class Ctrl_Down_JTable extends JTable { private static final long serialVersionUID = 1L; @Override protected void processMouseEvent(MouseEvent e) { int modifiers = e.getModifiers() | InputEvent.CTRL_MASK; int modifiersEx = e.getModifiersEx() | InputEvent.CTRL_MASK; MouseEvent myME = new MouseEvent((Component) e.getSource(), e.getID(), e.getWhen(), modifiers, e.getX(), e.getY(), e.getXOnScreen(), e.getYOnScreen(), e.getClickCount(), e.isPopupTrigger(), e.getButton()); super.processMouseEvent(myME); } }
메서드 3: 사용자 정의 ListSelectionModel 사용
또 다른 옵션은 비연속 셀 선택을 지원하는 사용자 정의 ListSelectionModel. 여기에는 DefaultListSelectionModel 클래스를 확장하고 특정 메서드를 재정의하여 원하는 기능을 구현하는 작업이 포함됩니다.
참고:
위 내용은 JTable에서 비연속 셀 선택을 활성화하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!