Erstmal ein Hallo an alle.
Nachdem ich in der Suche zwar Antworten auf setCaretPosition probleme gefunden habe (so auch auf der seite von Oracle) und ich mit meinem Problem immernoch nicht weiter gekommen bin vermute ich mal dass es an etwas anderem liegen könnte.
Ich wäre sehr verbunden wenn sich jemand das Codesnippet mal kurz anschauen könnte.
Aus Übersichtlichkeitsgründen poste ich mal nur den Entsprechenden Codeausschnitt in dem das JTextArea auf das JPanel gesetzt wird bevor es schließlich auf einem JDialog landet.
Noch kurz zum Problem:
Der Cursor wird nicht wie erwartet an das Ende des Textes in meinem JTextArea gesetzt,
sondern gar nicht.
Vielen Dank im voraus,
Holo
Nachdem ich in der Suche zwar Antworten auf setCaretPosition probleme gefunden habe (so auch auf der seite von Oracle) und ich mit meinem Problem immernoch nicht weiter gekommen bin vermute ich mal dass es an etwas anderem liegen könnte.
Ich wäre sehr verbunden wenn sich jemand das Codesnippet mal kurz anschauen könnte.
Aus Übersichtlichkeitsgründen poste ich mal nur den Entsprechenden Codeausschnitt in dem das JTextArea auf das JPanel gesetzt wird bevor es schließlich auf einem JDialog landet.
Noch kurz zum Problem:
Der Cursor wird nicht wie erwartet an das Ende des Textes in meinem JTextArea gesetzt,
sondern gar nicht.
Vielen Dank im voraus,
Holo
Java:
/*
* Label for the flower description
*/
final JLabel labelFlowerDescription = new JLabel();
labelFlowerDescription.setSize(120, 25);
labelFlowerDescription.setText(flowerDescription);
labelFlowerDescription.setLocation(3, 25);
labelFlowerDescription.setFont(labelFlowerDescription.getFont().deriveFont(10f));
labelFlowerDescription.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
labelFlowerDescription.addMouseListener(new MouseAdapter()
{
public void mouseClicked(MouseEvent e)
{
/**
* Textfield of the flower description
*/
textAreaFlowerDescription = new JTextArea();
textAreaFlowerDescription.requestFocus();
textAreaFlowerDescription.setBorder(BorderFactory.createLineBorder(Color.black));
textAreaFlowerDescription.setSize(120, 20);
textAreaFlowerDescription.setText(flowerDescription);
textAreaFlowerDescription.setFont(textAreaFlowerDescription.getFont().deriveFont(10f));
textAreaFlowerDescription.setLocation(3, 27);
textAreaFlowerDescription.setCursor(Cursor.getPredefinedCursor(Cursor.TEXT_CURSOR));
textAreaFlowerDescription.setCaretPosition(textAreaFlowerDescription.getDocument().getLength()); // TODO setCaretPosition
textAreaFlowerDescription.addKeyListener(new KeyListener()
{
public void keyPressed(KeyEvent e)
{
if(e.getKeyCode() == KeyEvent.VK_ENTER)
{
flowerDescription = textAreaFlowerDescription.getText().replace("\n", "");
labelFlowerDescription.setText(flowerDescription);
textAreaFlowerDescription.setVisible(false);
labelFlowerDescription.setVisible(true);
}
}
public void keyTyped(KeyEvent e) {
}
public void keyReleased(KeyEvent e) {
}
});
labelFlowerDescription.setVisible(false);
panel.add(textAreaFlowerDescription);
}
});