JTextArea beim Schreiben automatisch vergrößern

ehlr

Aktives Mitglied
Hallo.

Ich habe eine jTextArea und habe die auf Size(200,75) gesetzt.
Das sind ca. 3 Zeilen.
Nun möchte ich, dass wenn man die 3 Zeilen voll geschrieben hat, dass sich das jTextArea automatisch um eine Zeile also 25 px vergrößert (in der Länge).


Wie kann man sowas realisieren?
 
willst du wirklich die Komponente vergrößern oder reicht die ein Scrollbalken, denn ersteres würde bei mir als User eher Verwirrungs stiften. Komponenten die sich vergrößern kenn ich eher beim Vergrößern des Fensters in dem sie sich befinden.

ansonsten ist es vielleicht eine Frage des gewählten LayoutManagers, sofern du einen nutzt, ob er es überhaupt ermöglicht. Mit setPreferredSize oder setMinimumSize sollten man deiner Idee ja näher kommen.
 
Wir haben vor eine Art MindMap Creator zu basteln.
Wir setzen die einzelnen Punkte dann mit einem JtextArea, deshalb sollte es sich automatisch vergrößern.

Wie würde der Code konkret aussehen?
Wir benutzen keinen LayoutManager.
 
ohne layout-manager müsste es doch einfach mittels setSize oder einer verwandten Methode möglich sein, danach eventuell validate oder repaint aufrufen.

zeig mal wie ihr bisher euer fenster aufbaut
 
Java:
 JTextArea zettel = new JTextArea();
    zettel.setText("Dein Text");
    zettel.setBounds(10, 75, 200, 75);
    zettel.setName("Feld");
    zettel.setAutoscrolls(true);
    zettel.setForeground(chooseColor());
    zettel.setBorder(BorderFactory.createLineBorder(zettel.getForeground()));
    this.getContentPane().add(zettel);
    zettel.requestFocusInWindow();
    zettel.setVisible(true);


So erzeugen wir dieses Field.
Der Code wir im Button Listener aufgerufen.
 
Ich würde das auch einfach mit einer ScrollPane lösen. Sieht auch schicker aus und ist flexibler wenn wirklich viel Text drinsteht
 
Dar Text muss auf dem ersten Blick komplett sichtbar sein, da es ein Stichpunkt der Mindmap ist.
 
Java:
zettel.setBounds(10, 75, 200, 75);

damit änderst die Größe .. musst eben nur nochma aufrufen mit angepassten werten und vermutlich ein validate oder revalidate und oder repaint aufrufen ^^
oder gehts dir eher um das "wann weiss ich dass die 3. zeile voll is"?
 

Neue Themen


Zurück
Oben