So aktivieren Sie die nicht kontinuierliche Zellenauswahl in einer JTable
In Standard-JTable-Implementierungen können Benutzer nur Gruppen zusammenhängender Zellen auswählen. Es gibt jedoch Möglichkeiten, dieses Verhalten anzupassen, um eine individuelle und nicht kontinuierliche Zellenauswahl zu ermöglichen.
Methode 1: Verwenden des STRG-Modifikators
Wenn der Auswahlmodus der JTable ist auf ListSelectionModel.SINGLE_SELECTION festgelegt. Wenn Sie die STRG-Taste gedrückt halten, während Sie auf nicht zusammenhängende Zellen klicken, werden diese ausgewählt einzeln.
Methode 2: Überschreiben der Methode „processMouseEvent“
Für mehr Kontrolle über das Auswahlverhalten können Sie die Methode „processMouseEvent“ der Unterklasse „JTable“ überschreiben. In der überschriebenen Methode können Sie die Modifikatoren ändern, um die JTable davon zu überzeugen, dass die STRG-Taste gedrückt ist, während Mausereignisse verarbeitet werden.
Hier ist ein Beispiel-Codeausschnitt:
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); } }
Methode 3: Verwenden eines benutzerdefinierten ListSelectionModel
Eine weitere Option besteht darin, ein benutzerdefiniertes ListSelectionModel zu erstellen Dies unterstützt die nichtkontinuierliche Zellauswahl. Dazu gehört das Erweitern der DefaultListSelectionModel-Klasse und das Überschreiben bestimmter Methoden, um die gewünschte Funktionalität zu implementieren.
Hinweis:
Das obige ist der detaillierte Inhalt vonWie kann ich die nicht kontinuierliche Zellenauswahl in einer JTable aktivieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!