# Scrollpane an Textarea anhängen



## Mgrosy (5. Dez 2007)

Hallo,

Ich habe folgende Textarea + Scrollpane erstellt:


```
textarea = new JTextArea("Test");
	   add(new JScrollPane(textarea));
```


mit textarea.append füge ich Text in die Textarea ein, der auch ziemlich umfangreich werden kann. Mein Problem ist allerdings, dass bei umfangreicherem Text berhaupt keine Scrollpane angezeigt wird. 

Wisst ihr, wo hier der Fehler liegen könnte?


----------



## schlachtrufe (5. Dez 2007)

hm kann da jetzt keine klare aussage treffen.
aber vielleicht hilft es, wenn du eine scollpane einbaust der in der textare immer sichbar ist ( also auch wenn kein text drin steht)


```
JTextArea editor;
editor = new JTextArea("Hier ist ein Text\nHier die zweite Zeile");
	  editor.setFont(new Font("monospaced", Font.PLAIN, 24));
JScrollPane scroller = new JScrollPane(editor);
    this.getContentPane().add(scroller, BorderLayout.CENTER);

    scroller.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
    scroller.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
```

hab das selber noch nicht getestet, nur ebend mal schnell kopiert, vllt funktionierts ja


----------



## Guest (5. Dez 2007)

Und wie kann ich bei deinem Beispiel einen String in die textarea schreiben? 

Ich habe das bereits mit deinem Beispiel versucht, aber es klappt nicht.


----------



## schlachtrufe (6. Dez 2007)

ich weis nicht ob ich dein problem richtig verstehe.
du hast in deienr gui eine JTextArea, wo eine scollpane enthalten sein soll?

funktioniert denn alles ohne scrollpane? weil dein code aus dem ersten beitrag ist noch sehr unvollständig, oder war das mit absicht?

also so geht es (wenn ich dich richtig verstanden habe):


```
import java.awt.*;
import javax.swing.*;

class textarea extends JFrame {

  //das Textfeld
  JTextArea textarea;

  //Konstruktor
  public textarea {
    setGUI(); //Methode zum erstellen der GUI
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //schliessen des Fensters beendet es
  }

  private void setGUI() {
	  this.getContentPane().setLayout(new BorderLayout()); //Layoutmanager

	  textarea = new JTextArea(); //Initialisierung des Textfeldes
	  textarea.append("Der Text"); //Einfügen des Textes in das Textfeld
	  textarea.setFont(new Font("monospaced", Font.PLAIN, 24));

	  JScrollPane scroller = new JScrollPane(textarea); //die Scrollpane
          this.getContentPane().add(scroller, BorderLayout.CENTER); //Einfügen der Scrollpane in den Layoutmanager

          /* Optional - bewirkt, dass die Scrollpane rechts und und unten immer sichtbar ist
          scroller.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
          scroller.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
          */
  }

  public static void main(String[] args) {
      textarea frame = new textarea();
      frame.setTitle( "Title");
      frame.setBackground(Color.lightGray);
      frame.setSize(600, 400);
      frame.setVisible(true);
    }
}
```


----------

