JTextArea in JScrollPane packen

sheel

I love Asm
Hi

ich mach ein Applett, das von der Funktion her so eine Art Texteditor sein soll.
Da drin ist unter anderem ein JTextArea, dem ich jetzt Scrolleisten verpassen muss.

Da das mehr oder weniger das erste ( :( ) sinnvolle Programm ist, in dem ich Swing verwende, ist bis jetzt nichts dabei herausgekommen...

Hab irgendwo gelesen, dass man ein JTextArea direkt ins JScrollPane "adden" kann, und dann den ganzen Block dahin addet, wo das Textfeld eben hingehört...
mehr sollte laut der Seite nicht nötig sein...

Mein Problem ist jetzt nur, da, wo das Textfeld sein sollte, ist nichts.
Keine Scrolleiste, kein Textfeld, einfach nichts, nur eine graue Fläche.

Kennt jemand das Problem?

danke im Vorraus
sheel
 
Hi!

wenn du die Area in die Scrollpane packst musst du das Scrollpane an deinen Layout Manager übergeben und nicht die Area.

MfG
Saban
 
Moin,

etwas Code wäre hilfreich, um das Problem besser analysieren zu können.
So bleibt uns nur die berühmte Kristallkugel.

Gruß,
Xan
 
Code:
package pack;

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

public class Editor extends JApplet {
	JPanel pannord;
	JPanel pannordo;
	JButton ladbut;
	JButton savbut;
	JButton neubut;
	JPanel pannordu;
	JPanel pancent; ///////Hier das Panel, das das ganze enthalten wird
	JScrollPane centscroll; //////////Die ScrollPane
	JTextArea ctext;////////TextArea
	JPanel pansud;
	JLabel sudtext;

	@Override
	public void init() {
		pannord = new JPanel();
		pannordo = new JPanel();
		ladbut = new JButton("Laden");
		savbut = new JButton("Speichern");
		neubut = new JButton("Neu");
		pannordu = new JPanel();
		pancent = new JPanel();/////////////
		centscroll = new JScrollPane();///////////
		ctext = new JTextArea();//////////////
		pansud = new JPanel();
		sudtext = new JLabel();

		this.setLayout(new BorderLayout());
		pannord.setLayout(new BorderLayout());
		pannordo.setLayout(new GridLayout());
		pannordu.setLayout(new GridLayout());
		pannordo.add(neubut);
		pannordo.add(ladbut);
		pannordo.add(savbut);
		pannord.add(pannordo, BorderLayout.NORTH);
		pannord.add(pannordu, BorderLayout.CENTER);
		this.add(pannord, BorderLayout.NORTH);

		sudtext.setText("");
		pansud.add(sudtext);
		this.add(pansud, BorderLayout.SOUTH);

		pancent.setLayout(new BorderLayout());/////////
		ctext.setLineWrap(true);//////////
		centscroll.add(ctext);/////////
		pancent.add(centscroll, BorderLayout.CENTER);////////
		this.add(pancent, BorderLayout.CENTER);//////////

		super.init();
	}

	@Override
	public void start() {
		// TODO Auto-generated method stub
		super.start();
	}

	@Override
	public void stop() {
		// TODO Auto-generated method stub
		super.stop();
	}

}

Hab die relevanten Codeteile mit /////// gekennzeichnet
 
Ich habe mal auch so eine Art Texteditor geschrieben, da ging das ohne Probleme:

b78bbuil69l3uyhaa.png
 
Einen Teil hab ich jetzt, ich kann der Scrollbar nicht so einfach was adden, wenn man es gleich im Konstruktor mitgebe, sieht man einmal das Textfeld wieder.
Allerdings kann ich noch immer keine Scrollleisten entdecken :(
 
:confused: hab den exakt gleichen Code wie vom vorigen Beitrag
ausgeführt, und siehe da, es geht...
Ich hab nichts geändert, nur ein zweites Mal gestartet, fertig :D

Danke euch drei!

-erledigt-
 

Neue Beiträge

Zurück