Scrollpane - versteh nur noch Fragezeichen

  • Themenstarter Themenstarter KaffeeKoch
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
K

KaffeeKoch

Gast
Hi,

ich versuche mir gerade eine GUI zu basteln bei der unter anderem ein JEditorPane existieren soll. Damit alles angezeigt werden kann, brauche eine Scrollbar. Trotz ewigen Suchen und lesen bei der Insel komm ich einfach nicht auf den Fehler. Vielleicht kann mir jemand helfen... - Ahja habe an der entsprechenden Stelle einen Vermerk gemacht - Zeile 35 glaub

Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.plaf.basic.BasicSliderUI.ScrollListener;

public class Start extends JFrame{
	JButton btn;
	JTextField textFeld;
	JLabel labelTextField;
	JEditorPane listMessage;
	JList listUserOnline;

	/**************CONSTRUCTOR TO BUILD WINDOW WITH ALL COMPONENTS*****************/
	public Start(){
		setTitle("Komponente einfügen");
		setSize(500,500);
		setResizable(true);
		setLayout(null);
		
		/**************FIELD TO WRITE A MESSAGE*************************/
		textFeld = new JTextField(20);
		textFeld.setBounds(new Rectangle(100,385,200,30));
		
		/**************LABEL FOR TEXTFIELD******************************/
		labelTextField = new JLabel("Ihre Nachricht: ");
		labelTextField.setBounds(new Rectangle(0,400,100,10));
		
		/**************SHOW MESSAGES************************************/
		listMessage = new JEditorPane();
		listMessage.setBackground(Color.WHITE);
		listMessage.setEditable(false);
		listMessage.setBounds(new Rectangle(0,0,300,300));

//??????Wieso funktioniert folgendes nicht - so stehts in der Insel??????????
		JScrollPane scrollPane = new JScrollPane( JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, 
        JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS ); 
		scrollPane.setViewportView( listMessage );
//		System.out.println( scrollPane.getViewport().getVisibleRect() );
		
		/**************USER LIST****************************************/
		String[] listData = { 
				  "User1", "User2", "User3", "User4", "User5" }; 
		listUserOnline = new JList(listData);
		listUserOnline.setBackground(Color.white);
		listUserOnline.setBounds(new Rectangle(350, 0, 100, 300));		
		
		/**************BUTTON TO SEND A MESSAGE*************************/
		btn = new JButton("Nachricht absenden");
		btn.setBounds(new Rectangle(300,385,170,25));
		btn.addActionListener(new ActionListener(){
			public void actionPerformed(ActionEvent e){
				/*****write only a message if there is text*************/
				if(textFeld.getText().length() > 0){
					/*****check if we need a line break*****************/
					if(listMessage.getText().length() != 0){
						listMessage.setText(listMessage.getText()+"\n"+textFeld.getText());
					}else{
						listMessage.setText(listMessage.getText()+textFeld.getText());
					}
					textFeld.setText("");
				}
			}
		});
		
		/**************ADD STUFF TO FRAME******************************/
		getContentPane().add(btn);
		getContentPane().add(textFeld);
		getContentPane().add(labelTextField);
		getContentPane().add(listMessage);
		getContentPane().add(listUserOnline);
		
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}
	
	public static void main(String[] args){
		Start frame = new Start();
		frame.setLocation(800,300);
		frame.setVisible(true);
	}
}
 
warum sehe ich da
Code:
getContentPane().add(listMessage)
, wo du doch die ScrollPane haben wolltest?
 
Ahja ok das macht sinn aber habe eben probiert "listMessage" durch scrollPane zu ersetzen nur wird mir dann ja nichts mehr angezeigt wenn ich ne nachricht an "listMessage" sende und an scrollPane kann man doch keine senden oder sehe ich da grad was falsch
 
öhm? wie jetzt? ist das der Fall, hast du es jetzt ausprobiert? oder ist das so eine theoretische überlegung...? sollte eigentlich funzen, sonst muss ich das wohl kompilieren *gähn* 😉
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben