Swing JTextArea mit ScrollBar

mastercoll5

Aktives Mitglied
Ich habe ein kleines Fenster mit einer JTextArea gemacht, jedoch sollte da eine ScrollBar sein, die jedoch nicht angezeigt wird.

Kann mir wer da helfen?

Java:
package test;

import javax.swing.*;

public class test {

	static JButton start;
	static JTextField begin;
	static JTextField end;
	static JTextArea ausgabe;
	
	public static void main(String[] args) {	
		Frame();
	}
	
	public static void Frame() {
		//Macht das Frame
		JFrame frm = new JFrame("Primzahl");
		frm.setLayout(null);
	    frm.setBounds(200, 300, 800, 200);
	    frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
	    
	    //Macht den Start-Button
	    start = new JButton("Start");
	    start.setVisible(true);
	    start.setBounds(100, 100, 200, 50);
	    
	    //Macht das Eingabefeld
	    begin = new JTextField();
	    begin.setVisible(true);
	    begin.setBounds(20, 30, 150, 50);
	    
	    //Macht das Eingabefeld
	    end = new JTextField();
	    end.setVisible(true);
	    end.setBounds(190, 30, 150, 50);
	    
	    ausgabe = new JTextArea();
	    ausgabe.setVisible(true);
	    ausgabe.setBounds(400, 20, 350, 120);
	    ausgabe.setEditable(false);
	    
	    JScrollPane scr = new JScrollPane();
	    scr.setViewportView(ausgabe);
        scr.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
	    
	    //Listener in button Klasse
	    start.addActionListener(new button(start));
	    
	    frm.add(begin);
	    frm.add(end);
	    frm.add(ausgabe);
	    frm.add(start);
	    frm.setVisible(true);
	}
}
 

Beatsleigher

Bekanntes Mitglied
In der Regel wird diese automatisch angezeigt, sobald der Text lang genug wird.
Falls sie das doch nicht tut (Ich benutze den Designer in NetBeans - Macht alles viel, viel einfacher und schneller), dann musst du eine neue Instanz einer JScrollPane erstellen, und dann im Constructor den Control angeben.

Z.B:
Java:
public class MyClass extends JFrame {

    JScrollPane scrollPane = null;
    JTextArea textArea = null;

    public MyClass() {
        textArea = new JTextArea();
        scrollPane = new JScrollPane(textArea);
        this.add(scrollPane);
    }
}

Ich empfehle dir, NetBeans zu nutzen.
Andere mögen zwar nicht der gleichen Ansicht sein, da es "kein richtiges Programmieren" ist.
Doch, ein Designer, bzw. das schnelle Designen einer Anwendungen, gehört zu den Grundelementen des RAD - Rapid Application Development (Rapides/Schnelles Entwickeln einer Anwendung) - und es macht einem das Leben wirklich einfacher.
 

qexxler

Aktives Mitglied
Bin mir gerade nicht ganz sicher, ob man der JScrollPane nicht auch die Position per setBounds Methode sagen muss, deswegen probiere mal folgendes aus:

Java:
scr.setBounds(400, 20, 350, 120);

Noch ein paar kleine Tipps bzgl. des Designs:

Null-Layout ist..., nun ja... .Wenn du einmal die Vorzüge von LayoutManagern verstanden hast und im Umgang mit ihnen geübt bist, wirst du verstehen, warum man dieses Null-Layout nicht benutzen sollte und es von vielen hier im Forum so verschäht wird.

Schreib dir eine eigene Klasse für das Frame. Erbe in dieser NICHT von Frame, sondern lege dir eine Instanz-Variable von entsprechendem Typ an. Deklariere dort die entsprechenden Variablen als Instanz-Variablen und nicht als Klassen-Variablen. Thema Kapselung. Lege dir ein paar private - Methoden dort an und lagere sie aus dem entsprechenden Konstruktor aus.

So, nun erst einmal einen Kaffee.
 
Zuletzt bearbeitet:

mastercoll5

Aktives Mitglied
Wenn ich z.B. das FlowLayout benutze, weiß ich nicht wie ich die größe verändern kann und es sieht nur so aus:
 

Anhänge

  • Unbenannt.PNG
    Unbenannt.PNG
    5,1 KB · Aufrufe: 53

qexxler

Aktives Mitglied
Siehst du deine nun eigentlich deine ScrollPane mit meinem Code?

Wenn man einen LayoutManager benutzt, haben setBounds() Aufrufe im Code nichts mehr zu suchen. ;)
 

qexxler

Aktives Mitglied
Ich habe mal deine Methode Frame geändert:

Java:
    public static void Frame() {
        //Macht das Frame
        JFrame frm = new JFrame("Primzahl");
        frm.setLayout(null);
        frm.setBounds(200, 300, 800, 200);
        frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       
        //Macht den Start-Button
        start = new JButton("Start");
        start.setVisible(true);
        start.setBounds(100, 100, 200, 50);
       
        //Macht das Eingabefeld
        begin = new JTextField();
        begin.setVisible(true);
        begin.setBounds(20, 30, 150, 50);
       
        //Macht das Eingabefeld
        end = new JTextField();
        end.setVisible(true);
        end.setBounds(190, 30, 150, 50);
       
        ausgabe = new JTextArea("akjsdhakhdashdhaskdjasjd\n aksgdhjagsdhjgasd\n"
        		+ "akjsdhakhdashdhaskdjasjd\n aksgdhjagsdhjgasd\n"
        		+ "akjsdhakhdashdhaskdjasjd\n aksgdhjagsdhjgasd\n"
        		+ "akjsdhakhdashdhaskdjasjd\n aksgdhjagsdhjgasd\n"
        		+ "akjsdhakhdashdhaskdjasjd\n aksgdhjagsdhjgasd\n");
        ausgabe.setEditable(false);
       
        JScrollPane scr = new JScrollPane(ausgabe);
        scr.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
        scr.setBounds(400, 20, 350, 120);
       
       
        frm.add(begin);
        frm.add(end);
        frm.add(scr);
        frm.add(start);
        frm.setVisible(true);
    }
 

qexxler

Aktives Mitglied
Du musst natürlich statt auf deiner
Java:
ausgabe
Variablen die setBounds - Methode von scr aufrufen. Und anschließend deinem Frame die Component scr übergeben.

Java:
frame.add(scr)

Dann funktioniert das auch.

Und wenn du mit LayoutManager arbeitest, bietet sich hier an die setPreferredSize() Methode aufzurufen, sofern du gewisse Größen doch eingeben möchtest.

Ich hoffe, ich konnte dir helfen. ;-)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
ralfb1105 jTextArea Scrollbar hinzufügen - mit Jigloo erstellt AWT, Swing, JavaFX & SWT 7
P Scrollbar JTextArea AWT, Swing, JavaFX & SWT 23
J Beliebtes Problem: Scrollbar in JTextArea AWT, Swing, JavaFX & SWT 4
S JTextArea soll mit Scrollbar ausgestattet sein AWT, Swing, JavaFX & SWT 4
Tom299 JScrollPane(JTextArea) Scrollbar soll am Anfang stehen AWT, Swing, JavaFX & SWT 2
S JTextArea mit Scrollbar,append Text mit Fokus? AWT, Swing, JavaFX & SWT 5
L JTextArea Scrollbar-Problem! AWT, Swing, JavaFX & SWT 2
T Swing Mehrere Ausgaben in JTextArea AWT, Swing, JavaFX & SWT 2
B JPanel-Inhalte inkl. JTextarea zoomen? AWT, Swing, JavaFX & SWT 3
P JTextarea (in JScrollPane) zeigt nur die beiden letzten Einträge an? AWT, Swing, JavaFX & SWT 0
RedEagle Swing JTextArea ist leer AWT, Swing, JavaFX & SWT 13
E Warum wird Text im JTextArea erst am Programmende angezeigt ? AWT, Swing, JavaFX & SWT 1
E wie in JScrollPane auf JTextArea zugreifen AWT, Swing, JavaFX & SWT 12
K Swing 2 JTextArea parrallel scrollable AWT, Swing, JavaFX & SWT 16
Hatsi09 JTextArea Inhalt verlinken AWT, Swing, JavaFX & SWT 4
S Ausgabe in JTextArea AWT, Swing, JavaFX & SWT 13
H JTextArea - farbige Zeilen .. bitte um Vorschläge zur Implementierung AWT, Swing, JavaFX & SWT 1
F 2D-Grafik JTextArea drucken bringt mieses Ergebnis AWT, Swing, JavaFX & SWT 2
Mario1409 Swing JTextArea scroll Problem AWT, Swing, JavaFX & SWT 0
Bluedaishi JTextArea gefundene Zeile nach Oben Scrollen AWT, Swing, JavaFX & SWT 13
S JTextArea Text nach oben wandern lassen AWT, Swing, JavaFX & SWT 7
Bluedaishi JtextArea AWT, Swing, JavaFX & SWT 6
V JScrollBar soll weiterscrollen, wenn Inhalt von JTextArea erweitert wird AWT, Swing, JavaFX & SWT 7
G JTextArea mit JScrollPane wird nicht angezeigt AWT, Swing, JavaFX & SWT 2
Bluedaishi JDialog modal und JTextArea AWT, Swing, JavaFX & SWT 4
F JTextarea Steuern ~ consolenanbindung AWT, Swing, JavaFX & SWT 5
F Event Handling JTextArea auf bestimmte Eingabe reagieren (Return-Taste) AWT, Swing, JavaFX & SWT 2
F JTextArea hat keinen Rahmen AWT, Swing, JavaFX & SWT 10
N JTextArea Events weiterleiten AWT, Swing, JavaFX & SWT 3
R JTextArea mit verschiedenen Textfarben AWT, Swing, JavaFX & SWT 6
M JTextArea wird nicht aktualisiert (ActionListener-Problem) AWT, Swing, JavaFX & SWT 1
HoloYoitsu jTextArea.setCaretPosition(); What am I doing wrong? AWT, Swing, JavaFX & SWT 0
S Zeilenumbruch jTextArea mit toString AWT, Swing, JavaFX & SWT 2
F Swing String[] in JTextArea ausgeben. Jeder Eintrag in neue Zeile, aber ohne "\n"- Geht das? AWT, Swing, JavaFX & SWT 3
M JTextArea - Leertaste "sperren" AWT, Swing, JavaFX & SWT 1
S Inhalt der Java-Konsole in die JTextArea AWT, Swing, JavaFX & SWT 3
S Swing Zahl der Zeilenumbrüche in einer JTextArea bestimmen AWT, Swing, JavaFX & SWT 1
F Swing Caret in JTextArea vergrößern AWT, Swing, JavaFX & SWT 2
D JTextArea auf KeyListener Command AWT, Swing, JavaFX & SWT 6
N JFrame änliches wie JTextArea? AWT, Swing, JavaFX & SWT 2
A Swing JTextArea - Multi-Line-Editing AWT, Swing, JavaFX & SWT 2
A Swing JTextArea aus anderer Klasse in realtime aktualisieren AWT, Swing, JavaFX & SWT 3
O JTextArea befüllen AWT, Swing, JavaFX & SWT 2
G JTextArea on the fly aus anderem Programm befüllen AWT, Swing, JavaFX & SWT 4
A Swing Einrücken mehrerer Zeilen per Tab in einem JTextPane/JTextArea AWT, Swing, JavaFX & SWT 3
T Swing Ausgabe aus ArrayList in Klasse1 in jTextArea in Klasse2 AWT, Swing, JavaFX & SWT 2
B JTextArea Größe an Container anpassen AWT, Swing, JavaFX & SWT 2
B Drucken der JTextArea AWT, Swing, JavaFX & SWT 4
M JTextArea Zeile hinzufügen AWT, Swing, JavaFX & SWT 4
C JTextArea scrollt bei append(String) aus Threads nicht ans Ende AWT, Swing, JavaFX & SWT 7
P JPanel- Listener durch JTextArea aktivieren AWT, Swing, JavaFX & SWT 8
A JTextArea - Zeichenbegrenzung nach .txt Datei import AWT, Swing, JavaFX & SWT 6
M Swing JScrollPane (Parent JTextArea) aktualisieren + neue Zeile AWT, Swing, JavaFX & SWT 5
Hoppelmann Swing Tasten in JTextArea blockieren AWT, Swing, JavaFX & SWT 2
S JTextArea Tastaturanschläge AWT, Swing, JavaFX & SWT 2
E Swing JTextArea in JFrame, wie nun WindowFocusListener implementieren? AWT, Swing, JavaFX & SWT 2
S Problem mit JButton und JTextArea AWT, Swing, JavaFX & SWT 2
J Swing Mitwachsende JTextArea+ JPanel AWT, Swing, JavaFX & SWT 4
P Swing JtextArea füllen mit setText AWT, Swing, JavaFX & SWT 7
M Probleme mit der Selektion einer JTextArea AWT, Swing, JavaFX & SWT 3
T Die Größe einer JTextArea an Ihren Parent JPanel anpassen. AWT, Swing, JavaFX & SWT 5
hdi Swing ListCellRenderer + JTextArea + LineWrap AWT, Swing, JavaFX & SWT 6
T ComponentOrientation in JTextArea AWT, Swing, JavaFX & SWT 3
H Hintergrundbild in jTextArea AWT, Swing, JavaFX & SWT 4
G Swing JTextArea mit fester Anzahl Spalten! AWT, Swing, JavaFX & SWT 10
G ein JTextArea in zwei JPanels AWT, Swing, JavaFX & SWT 2
L JTextArea mit JScrollPane AWT, Swing, JavaFX & SWT 7
padde479 Swing replace JTextArea funktioniert nicht AWT, Swing, JavaFX & SWT 2
L Zeilenumbrüche aus JTextArea MIT in Textdatei schreiben AWT, Swing, JavaFX & SWT 4
_dp jTextArea/jTextPanel Auto Höhe AWT, Swing, JavaFX & SWT 5
Ollek JTextArea - Feste Zeilenanzahl(8 Zeilen) AWT, Swing, JavaFX & SWT 3
S Swing JTextArea während der Laufzeit füllen AWT, Swing, JavaFX & SWT 5
Ollek Text in JTextField und JTextArea zur Laufzeit ändern AWT, Swing, JavaFX & SWT 6
P Datenelement anderer Klasse in JTextArea ausgeben AWT, Swing, JavaFX & SWT 4
M Swing Ausgabe in JTextArea verzögern AWT, Swing, JavaFX & SWT 7
T Swing jTextArea soll sich der Fenstergröße anpassen beim ziehen?? AWT, Swing, JavaFX & SWT 2
S System.out in JTextArea AWT, Swing, JavaFX & SWT 4
S Swing JTextArea - Bild auf/ab Tasten implementieren AWT, Swing, JavaFX & SWT 4
J JTextArea verschwindet bei resize vom JFrame AWT, Swing, JavaFX & SWT 2
VfL_Freak "setAccelerator/KeyStroke" bei JTextArea ? AWT, Swing, JavaFX & SWT 6
P Swing JTextArea - beim neuzeichnen bleibt manchmal weißer Kasten AWT, Swing, JavaFX & SWT 10
Dit_ JTextArea zu Zeile X scrollen AWT, Swing, JavaFX & SWT 4
H variable Höhe einer JTextArea (als Renderer/Editor) als Zelle einer JTable AWT, Swing, JavaFX & SWT 9
B Wechsel JTextArea und JComponent AWT, Swing, JavaFX & SWT 9
M [erledigt] Bestimmte Zeile aus JTextArea löschen AWT, Swing, JavaFX & SWT 3
G Swing JTable und JTextArea synchronisieren AWT, Swing, JavaFX & SWT 2
C JLabel, JTextArea, JScrollPane. repaint(); ? AWT, Swing, JavaFX & SWT 6
M JTextArea AWT, Swing, JavaFX & SWT 2
E Swing JTextArea Alternative? AWT, Swing, JavaFX & SWT 5
A Swing JTextArea über Frame hinaus anzeigen? AWT, Swing, JavaFX & SWT 2
S JInternalFrame oder JTextArea neu laden AWT, Swing, JavaFX & SWT 2
N JTextArea.setLineWrap Bug? AWT, Swing, JavaFX & SWT 3
N Swing JTextArea/JScrollpane: JScrollbar position AWT, Swing, JavaFX & SWT 8
I JTextArea mit Copy Paste Funktion AWT, Swing, JavaFX & SWT 7
M Swing JTextArea größe anpassen & setBackground liefer Nullpointer AWT, Swing, JavaFX & SWT 4
Plastagen JTextArea CaretPosition Aktualisierung AWT, Swing, JavaFX & SWT 10
C JTextField und JTextArea - Verständnisproblem AWT, Swing, JavaFX & SWT 14
B Exceptions werfen und in JTextArea ausgeben AWT, Swing, JavaFX & SWT 4
F new Line in JTextarea AWT, Swing, JavaFX & SWT 15
X Problem bei JTextArea und Thread.sleep() AWT, Swing, JavaFX & SWT 8

Ähnliche Java Themen

Neue Themen


Oben