Hallo,
ich habe das Problem, dass sich der Cursor in meinem JTextPane nicht mit den Pfeiltasten der Tastatur bewegen lässt. Das JTextPane sitzt auf einem JInternalFrame, welches wiederum auf einem JPanel sitzt.
Die Kindelemente werden jeweils über ein normales add() zugefügt. Meine Vermutung ist ja, dass das JTextPane irgendwie nicht richtig im Focus ist wenn ich auf den JInternalFrame klicke. Dagegen spricht allerdings, dass ich den Cursor mit der Maus beliebig platzieren und auch Text hinzufügen/ löschen kann, nur das navigieren durch den Text mit den Pfeiltasten funktioniert nicht. Um das mit dem Focus mal zu testen habe ich probiert mir vom JInternalFrame getMostRecentFocusOwner() und getFocusOwner() ausgeben zu lassen, was aber jeweils null zurück gab.
Ist vielleicht schon mal jemand auf so ein Problem gestoßen oder kann Hinweise geben was ich noch versuchen könnte? Hatte es schon damit versucht dem JTextPane einen Keylistener anzuhängen. Das funktionierte auch für Links/ Rechts, nach Oben/ Unten ist allerdings etwas schwerer umzusetzen...
Der Quelltext vom Konstruktor des JINternalFrame sieht so aus:
Hoffe jemand hat eine Idee woran das liegen könnte!
ich habe das Problem, dass sich der Cursor in meinem JTextPane nicht mit den Pfeiltasten der Tastatur bewegen lässt. Das JTextPane sitzt auf einem JInternalFrame, welches wiederum auf einem JPanel sitzt.
Die Kindelemente werden jeweils über ein normales add() zugefügt. Meine Vermutung ist ja, dass das JTextPane irgendwie nicht richtig im Focus ist wenn ich auf den JInternalFrame klicke. Dagegen spricht allerdings, dass ich den Cursor mit der Maus beliebig platzieren und auch Text hinzufügen/ löschen kann, nur das navigieren durch den Text mit den Pfeiltasten funktioniert nicht. Um das mit dem Focus mal zu testen habe ich probiert mir vom JInternalFrame getMostRecentFocusOwner() und getFocusOwner() ausgeben zu lassen, was aber jeweils null zurück gab.
Ist vielleicht schon mal jemand auf so ein Problem gestoßen oder kann Hinweise geben was ich noch versuchen könnte? Hatte es schon damit versucht dem JTextPane einen Keylistener anzuhängen. Das funktionierte auch für Links/ Rechts, nach Oben/ Unten ist allerdings etwas schwerer umzusetzen...
Der Quelltext vom Konstruktor des JINternalFrame sieht so aus:
Java:
public JComponentBounds(final JComponent comp, final String ID, final TemplateEditor tempEdit, final int X, final int Y, final int Width, final int Height, final boolean fix){
super();
double zoom = tempEdit.getZoom();
id = ID;
this.comp = comp;
comp.setOpaque(true);
this.focused = focused;
x = X;
y = Y;
width = Width;
height = Height;
this.fix = fix;
setBounds((int) (x*zoom), (int) (y*zoom), (int) (width*zoom), (int) (height*zoom));
setResizable(true);
setVisible(true);
setOpaque(true);
setBackground(TRANSPARENT);
((BasicInternalFrameUI) getUI()).setNorthPane(null);
setBorder(BorderFactory.createLineBorder(Color.GRAY, 1));
comp.setFocusable(true);
add(comp);
Hoffe jemand hat eine Idee woran das liegen könnte!