Swing Änderung der Tastatur-Navigation in einer JTable

Curry

Aktives Mitglied
Ich möchte die Tastatur-Navigation in einer JTable verändern. Hier im Forum habe ich dieses Beispiel gefunden: http://www.java-forum.org/awt-swing-swt/27003-swing-eingabefelder-tabelle.html#post170994.

Das schaut schonmal sehr gut aus. Jedoch kenne ich mich bisher mit InputMaps gar nicht aus und ich bin gerade etwas verwirrt.

Gibt's eine Möglichkeit den Code der Standard-Belegung (Taste mit der korrespondierenden Aktion) zu sehen? Also z.B. "was passiert auf Ebene des Codes wenn VK_TAB oder VK_ENTER gedrückt wird?

Und gibt's es dazu ein erklärenderes Manual/Howto/Anleitung?

Ich würde das gerne so verändern, dass nach der Beendigung der Benutzereingabe mit VK_ENTER nicht der Focus auf die Spalte darunter, sondern rechts daneben gelegt wird.

Würde mich sehr über eure Hilfe freuen!
 

Michael...

Top Contributor
Gibt's eine Möglichkeit den Code der Standard-Belegung (Taste mit der korrespondierenden Aktion) zu sehen? Also z.B. "was passiert auf Ebene des Codes wenn VK_TAB oder VK_ENTER gedrückt wird?
Was verstehts Du unter Standardbelegung? Die Reaktion auf einen Tastendruck ist meist von der jeweiligen Komponente abhängig und wird - wie indem Beispiel zu sehen - über deren Input und ActionMaps definiert. Das Stichwort dazu heisst KeyBindings: How to Use Key Bindings (The Java™ Tutorials > Creating a GUI With JFC/Swing > Using Other Swing Features)

Für die einzelnen Komponenten kann man die Tastaturbelegung über die der verschieden InputMaps
"erfragen". Für eine JTable z.B. so:
Java:
	InputMap inputMap = table.getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
	KeyStroke[] strokes = inputMap.allKeys();
	
	for (KeyStroke stroke : strokes) {
		System.out.println(stroke.toString());
		System.out.println("\t" + inputMap.get(stroke));
	}
 

Curry

Aktives Mitglied
Das ist schonmal sehr hilfreich!

Gibt es eine Möglichkeit den Code für z.B. "pressed TAB" -> "selectNextColumnCell" einzusehen? Der Ausdruck "selectNextColumnCell" steht ja wahrscheinlich für einen Methodennamen.
 

Michael...

Top Contributor
"selectNextColumnCell" ist der Name der Action. Ob's da eine Methode dazu gibt weiss ich nicht.

Letztendlich wird das Aussehen und Verhalten von Komponenten durch das LaF über/gesteuert. Man könnte sich mal die TableUI Klassen anschauen. Eventuell findet man da etwas dazu.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
P JTable Listener für die Änderung einzelner Zellen oder Rows AWT, Swing, JavaFX & SWT 2
melaniemueller Reaktion auf Änderung im Kombinationsfeld AWT, Swing, JavaFX & SWT 5
E Swing Componenten werden nach Änderung des display modes verzerrt dargestellt AWT, Swing, JavaFX & SWT 8
kodela Swing Letzte Änderung in der Tabelle wird nicht gespeichert AWT, Swing, JavaFX & SWT 5
T Swing Änderung des ActionListener Events nach Klick auf JButton AWT, Swing, JavaFX & SWT 2
L JSplitPane - auf Änderung reagieren AWT, Swing, JavaFX & SWT 4
S Swing Bild auf jPanel nach Änderung von JComboBox zeichnen AWT, Swing, JavaFX & SWT 4
G JScrollPane reagiert nicht auf Änderung der JPanel-Größe AWT, Swing, JavaFX & SWT 4
A Swing Suche Listener für beliebige Änderung an GUI Items/Controls AWT, Swing, JavaFX & SWT 8
TheWhiteShadow JList-Inhalt nach Änderung weg AWT, Swing, JavaFX & SWT 3
H Swing Auf Änderung bei JRadioButton reagieren. AWT, Swing, JavaFX & SWT 3
G Components erscheinen erst bei Änderung des Frames AWT, Swing, JavaFX & SWT 3
N Swing Dynamisches Verhalten bei Änderung Fenstergröße AWT, Swing, JavaFX & SWT 6
P Bilder werden nach Änderung nicht angezeigt AWT, Swing, JavaFX & SWT 15
P Swing Event das ausgelöst wird, sobald Änderung der Größe Abgeschlossen ist AWT, Swing, JavaFX & SWT 4
D LayoutManager GridBagLayout, Änderung zur Laufzeit AWT, Swing, JavaFX & SWT 4
jueki Event bei Änderung der Spaltenbreite in einem JTable AWT, Swing, JavaFX & SWT 15
S Swing JTable nach einer Änderung einer Zelle komplett aktualisieren. AWT, Swing, JavaFX & SWT 10
Milady Swing Änderung von Daten mit sql AWT, Swing, JavaFX & SWT 2
E 2 Frames - eine Änderung AWT, Swing, JavaFX & SWT 4
T JTable erst nach Änderung der Spaltenbreite neu zeichnen AWT, Swing, JavaFX & SWT 10
Balbes Änderung des Wertes von JCheckBox in einer JTable AWT, Swing, JavaFX & SWT 4
I Swing Bild wird erst bei manueller Änderung der Fenstergrösse gezeichnet AWT, Swing, JavaFX & SWT 3
hdi Swing setPreferredSize zeigt keine Änderung AWT, Swing, JavaFX & SWT 2
F JFrame Änderung der Größe erkennen AWT, Swing, JavaFX & SWT 2
J Font Änderung nach Editorwechsel? AWT, Swing, JavaFX & SWT 3
M JTable alte Daten vor Änderung abfangen AWT, Swing, JavaFX & SWT 11
S Wichtige Frage zu JTextField-Reaktion auf Änderung des Inhal AWT, Swing, JavaFX & SWT 6
B Auf Fenster Pos.Änderung reagieren und 2. Fenster andocken AWT, Swing, JavaFX & SWT 10
J jTable, welcher listener für Änderung der Spaltenbreite AWT, Swing, JavaFX & SWT 2
P Änderung der Fenstergrösse abragen und reagieren. AWT, Swing, JavaFX & SWT 3
G Bei Änderung an einem Texfeld in SWT eine Aktion AWT, Swing, JavaFX & SWT 3
S JTree - bei Änderung in DB neu zeichnen AWT, Swing, JavaFX & SWT 5
G Dringend ! SWT-Table übernimmt Änderung nicht AWT, Swing, JavaFX & SWT 2
B JTable - Letzte Änderung wird nicht übernommen AWT, Swing, JavaFX & SWT 5
G Auf Fenstergrößen-Änderung reagieren AWT, Swing, JavaFX & SWT 10
J JTable Änderung erst beim Zeilenwechsel AWT, Swing, JavaFX & SWT 5
M JTree nach LaF-Änderung komisch AWT, Swing, JavaFX & SWT 4
M GUI-Repaint nach Änderung der Fenstergröße AWT, Swing, JavaFX & SWT 2
N Objecte bewegen mit Tastatur AWT, Swing, JavaFX & SWT 5
T GUI über Tastatur bedienen AWT, Swing, JavaFX & SWT 3
N Swing JScrollPane mit Tastatur bedienen? AWT, Swing, JavaFX & SWT 0
L Swing Tastatur zeichen AWT, Swing, JavaFX & SWT 4
S Tastatur frame nur nur 1 mal öffnen AWT, Swing, JavaFX & SWT 1
G Tastatur abfragen AWT, Swing, JavaFX & SWT 0
V Tastatur KeyListener für mehrere Buttons AWT, Swing, JavaFX & SWT 1
M Button klicken anstelle der Tastatur AWT, Swing, JavaFX & SWT 2
7 KeyListener tastatur temporär blockieren AWT, Swing, JavaFX & SWT 7
I ausgewählte Zeile mit Hilfe der Tastatur löschen! AWT, Swing, JavaFX & SWT 3
kodela Swing JToggleButton und Tastatur AWT, Swing, JavaFX & SWT 2
J Inaktivität von Maus und Tastatur AWT, Swing, JavaFX & SWT 4
S Tastatur-Shortcut klappt nicht AWT, Swing, JavaFX & SWT 17
S Tastatur Event auserhalb des fokuses aufnehmen AWT, Swing, JavaFX & SWT 4
vladimir Swing virtuelle Tastatur realisieren AWT, Swing, JavaFX & SWT 3
M Tastatur simulieren AWT, Swing, JavaFX & SWT 20
D Swing JTree Was passiert beim Tippen auf Tastatur. AWT, Swing, JavaFX & SWT 2
B JTree - Kontextmenü per Tastatur öffnen AWT, Swing, JavaFX & SWT 3
D Tastatur Shortcut auslösen bei FocusGained-Event AWT, Swing, JavaFX & SWT 2
B JTable & Tastatur-Shortcuts AWT, Swing, JavaFX & SWT 3
J Auslösung von Aktionen über Tastatur (Netbeans) AWT, Swing, JavaFX & SWT 23
S Virtuelle Tastatur AWT, Swing, JavaFX & SWT 30
M Tastatur komplett sperren? AWT, Swing, JavaFX & SWT 9
T Gleichzeitiges Steuern von 2 Objekten über Tastatur AWT, Swing, JavaFX & SWT 8
I Globale Tastatur-Events abfragen AWT, Swing, JavaFX & SWT 3
N Tastatur Zeichen einlesen ohne sichtbares Fenster AWT, Swing, JavaFX & SWT 8
R Button actions mit Tastatur ausführen AWT, Swing, JavaFX & SWT 6
F JComboBox setEditable( true ) auf Tastatur Events reagieren AWT, Swing, JavaFX & SWT 4
S Swing Navigation durch JPanels AWT, Swing, JavaFX & SWT 0
H swt browser disable navigation AWT, Swing, JavaFX & SWT 4
J JavaFX Navigation AWT, Swing, JavaFX & SWT 3
B Navigation funkt nicht richtig AWT, Swing, JavaFX & SWT 3
G Navigation in JTable / ComboBox AWT, Swing, JavaFX & SWT 3

Ähnliche Java Themen

Neue Themen


Oben