Cursor in JTextField setzen

Patrick123

Mitglied
Hallo,

ich habe das Problem, das ich ein JOptionPane mit drei Textfeldern habe und dort gerne den Cursor gleich im ersten Feld hätte (nicht auf dem "OK"-Button).

Hier ein Ausschnitt des Codes:

Java:
                        sp1 = new JTextField();
                        sw1 = new JTextField();
                        so1 = new JTextField();
                        Object[] message = {"SW-Parameter (Form: 0-0-0)",sp1, "Wert", sw1, "Offset",so1};
                        JOptionPane pane = new JOptionPane(message, JOptionPane.PLAIN_MESSAGE, JOptionPane.OK_CANCEL_OPTION);
                        pane.createDialog(null, "Eingabe").setVisible(true);

Der Cursor soll in das JTextField sp1 springen.
Java:
sp1.requestFocus();
Habe ich probiert, aber das funktioniert irgendwie nicht...
Danke im Voraus für Anregungen und Tips!

Gruß
Patrick
 
du musst dir vermutlich von dem JDialog den du mit createDialog(...) erzeugst die passende Component suchen (mit getComponent(index) ) und dann auf diese den Focus setzen.
 
soviel steht fest 🙂
wenn man den weg über createDialog geht wird das aber absolut nicht schön..
Java:
JDialog dialog = optionPane.createDialog(/*...*/);
Component[] comps = dialog.getComponents();
JRootPane rootp = (JRootPane)comps[0];
Component[] rootPaneComps = rootp.getComponents();
// ... usw usw usw
und das nur für einen Focus ?!
 

Neue Themen


Zurück
Oben