JList mit JScrollPane

Hallo,

ja ich weiß, das Thema ist oft diskutiert worden und ich habe auch schon lange im Netz gesucht und vieles probiert, aber es klappt nicht.

Ich übergebe mit

Java:
irgendEinPanel.add(new JScrollPane(irgendEineJList);

dann habe ich zwar ein ScrollBar, aber dieser ist undynamisch, er passt sich nicht dem Inhalt der JList an. Ich kann da ein wenig scrollen, aber eben nicht über den kompletten Inhalt.

???:L???:L???:L
 
B

bygones

Gast
ohne mehr code kann man nur ins blaue raten... meister fehler ist, das NullLayout - also nutz einen LayoutManager
 
code dazu:

Java:
public JPanel verschiebeWortZuBezhPanel() {
		JPanel hauptPanel = new JPanel();
		hauptPanel.setLayout(new BoxLayout(hauptPanel, BoxLayout.PAGE_AXIS));
		hauptPanel.setBorder(BorderFactory.createTitledBorder("Verschieben"));
		
		JPanel obenPanel = new JPanel(new FlowLayout(FlowLayout.LEFT));
		
		JLabel wortLabel = new JLabel("Wort eingeben: ");
		JTextField wortField = new JTextField();
		wortField.setPreferredSize(new Dimension(150, 25));
		JButton suchenButton = new JButton("Suchen");
		JList wortListe = new JList();
		wortListe.setPreferredSize(new Dimension(200,200));
		wortListe.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
		
		obenPanel.add(wortLabel);
		obenPanel.add(wortField);
		obenPanel.add(suchenButton);
		obenPanel.add(new JScrollPane(wortListe));
		
		JPanel mittePanel = new JPanel(new FlowLayout(FlowLayout.CENTER));
		
		JButton verschiebeButton = new JButton("Verschieben");
		
		mittePanel.add(verschiebeButton);
		
		hauptPanel.add(obenPanel);
		hauptPanel.add(mittePanel);
		
		suchenButton.addActionListener(bearbeitenGL.wort1SuchenButtonAction(wortField, wortListe));
		verschiebeButton.addActionListener(bearbeitenGL.verschiebenButtonAction(wortListe));
		
		return hauptPanel;
	}
 
S

SlaterB

Gast
besser, aber nicht gut genug,
in allen Lebenslagen der Welt gilt immer eine Grundregel: poste ein vollständig laufendes Testprogramm,
ohne Benutzereingaben, Datei oder Datenbank, mit vorgegebenen Dummy-Werten,
kopieren, run, Fehler sehen, sonst geht gar nix

wobei:
> wortListe.setPreferredSize(new Dimension(200,200));
könnte das was ausmachen?
die Liste sollte so groß werden wie sie will, das ScrollPane kannst du ja begrenzen
 
Java:
import java.awt.Dimension;
import java.awt.FlowLayout;

import javax.swing.BorderFactory;
import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
import javax.swing.ListSelectionModel;

import Geschäftslogik.BearbeitenDialog2GL;
import Model.Start;

/**
 * @author Administrator
 *
 */
public class BearbeitenDialog2 extends JDialog {
	
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	BearbeitenDialog2GL bearbeitenGL = new BearbeitenDialog2GL();

	/**
	 * @param mainframe
	 */
	public BearbeitenDialog2(JFrame mainframe) {
		// TODO Auto-generated constructor stub
		new JDialog(Start.getInstance().getHauptWindow(), true);
		setTitle("Wört verschieben");
		setLocationByPlatform(true);
		setDefaultCloseOperation(DISPOSE_ON_CLOSE);
		setSize(1024, 768);
		
		add(mainPanel());
		
		pack();
		setVisible(true);
	}
	
	public JPanel mainPanel() {
		JPanel hauptPanel = new JPanel();
		hauptPanel.setLayout(new BoxLayout(hauptPanel,BoxLayout.PAGE_AXIS));
		
		hauptPanel.add(hinweisPanel());
		hauptPanel.add(verschiebeWortZuBezhPanel());
		
		return hauptPanel;
	}
	
	public JPanel hinweisPanel() {
		JPanel hinweisPanel = new JPanel();
		hinweisPanel.setLayout(new BoxLayout(hinweisPanel, BoxLayout.LINE_AXIS));
		hinweisPanel.setBorder(BorderFactory.createTitledBorder("!Hinweis!"));
		
		JPanel textPanel = new JPanel(new FlowLayout(FlowLayout.LEFT,10,0));
		JLabel hinweisLabel = new JLabel("Geben Sie das gesuchte Wort ein, klicken Sie auf 'suchen',\n markieren Sie die gewünschten Wörter und klicken Sie 'Verschieben'!");
		textPanel.add(hinweisLabel);
		
		hinweisPanel.add(textPanel);
		
		return hinweisPanel;
	}
	
	public JPanel verschiebeWortZuBezhPanel() {
		JPanel hauptPanel = new JPanel();
		hauptPanel.setLayout(new BoxLayout(hauptPanel, BoxLayout.PAGE_AXIS));
		hauptPanel.setBorder(BorderFactory.createTitledBorder("Verschieben"));
		
		JPanel obenPanel = new JPanel(new FlowLayout(FlowLayout.LEFT));
		
		JLabel wortLabel = new JLabel("Wort eingeben: ");
		JTextField wortField = new JTextField();
		wortField.setPreferredSize(new Dimension(150, 25));
		JButton suchenButton = new JButton("Suchen");
		JList wortListe = new JList();
		wortListe.setPreferredSize(new Dimension(200,200));
		wortListe.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
		
		obenPanel.add(wortLabel);
		obenPanel.add(wortField);
		obenPanel.add(suchenButton);
		obenPanel.add(new JScrollPane(wortListe));
		
		JPanel mittePanel = new JPanel(new FlowLayout(FlowLayout.CENTER));
		
		JButton verschiebeButton = new JButton("Verschieben");
		
		mittePanel.add(verschiebeButton);
		
		hauptPanel.add(obenPanel);
		hauptPanel.add(mittePanel);
		
		suchenButton.addActionListener(bearbeitenGL.wort1SuchenButtonAction(wortField, wortListe));
		verschiebeButton.addActionListener(bearbeitenGL.verschiebenButtonAction(wortListe));
		
		return hauptPanel;
	}
}
 
S

SlaterB

Gast
hast du die letzten hinzugefügten Zeilen meines vorherigen Postings gesehen?

ansonsten ist das neue Posting ohne viel Sinn, es fehlen ja immer noch große Teile des Programms, die Liste ist leer
(und nein, poste nicht tausende Zeilen Code, reduziere dein Problem auf ein Dummy-Testprogramm)


-----

nebenbei:

Java:
 public BearbeitenDialog2(JFrame mainframe) {
        new JDialog(Start.getInstance().getHauptWindow(), true);
eine Klasse die von Dialog erbt und in der new JDialog() steht, ist normalerweise nicht korrekt
bzw. enthält irgendwas überflüssiges, das sind zwei Dialoge

und wenn ein JFrame als Parameter übergeben wird, wieso wird dann noch irgendwo das 'HauptWindow' abgefragt?
 
Zuletzt bearbeitet von einem Moderator:
Ähnliche Java Themen
  Titel Forum Antworten Datum
Q-bert Strings aus der JList in eine Datenbank speichern Allgemeine Java-Themen 1
L Drop Emails von Outlook in eine JList Allgemeine Java-Themen 5
F 2D Array in jList einfügen Allgemeine Java-Themen 8
H JList GUI Allgemeine Java-Themen 0
K Neue Elemente in JList einfügen Allgemeine Java-Themen 2
R Vector in JList Allgemeine Java-Themen 11
Joew0815 JList + JTableModel: Parameter der Tabelle übergeben Allgemeine Java-Themen 10
S JList mit JScrollBar Allgemeine Java-Themen 6
nutellastulle Zugriff, Übergabe, Bearbeitung und Ausgabe von Jlist Allgemeine Java-Themen 6
S XML in JList Allgemeine Java-Themen 3
C Hilfe bei Adressbuch-Programmierung, wie am Besten mit JList implementieren Allgemeine Java-Themen 2
M Swing JList Problem Allgemeine Java-Themen 4
A JList als JMenuItem Allgemeine Java-Themen 7
A Drucken einer JList Allgemeine Java-Themen 3
lenniii Listener & JList Allgemeine Java-Themen 3
S JList in Vector Allgemeine Java-Themen 3
J MP3 mit Java - Frage zu JList Allgemeine Java-Themen 5
M JList und DB Allgemeine Java-Themen 6
F Strings in JList ausrichten/links/rechts/mittig Allgemeine Java-Themen 10
Zed JList Object einfügen und Text anzeigen Allgemeine Java-Themen 3
P JList Allgemeine Java-Themen 4
B 2 JList instanzen wo nur einer zur selben Zeit selektierbar? Allgemeine Java-Themen 8
B Aktualisierung einer JList Allgemeine Java-Themen 9
B JList Element Auswahl Allgemeine Java-Themen 2
G JList lädt gesamten Datenbestand Allgemeine Java-Themen 5
M JList seltsames verhalten. Allgemeine Java-Themen 5
W JList, Datenbankanbindung, getSelected? Allgemeine Java-Themen 7
T ungewöhnliche Exception (Multithreading und JList) Allgemeine Java-Themen 10
N JList mit Mausklick auf einen JButton scrollen Allgemeine Java-Themen 28
N JList aktualisieren Allgemeine Java-Themen 23
F JScrollPane mit mehreren Panels Allgemeine Java-Themen 1
J JScrollPane und Button erscheinen nicht Allgemeine Java-Themen 13
S Fehler mit JScrollPane Allgemeine Java-Themen 4
B JScrollPane und JPanel: Scrollen nur nach Größe des JPanels Allgemeine Java-Themen 2
L JScrollPane Allgemeine Java-Themen 8
S JScrollPane Problem Allgemeine Java-Themen 2
S Hilfe mit JScrollPane Allgemeine Java-Themen 3
R JTextPane (JEditorPane) ignoriert JScrollPane Allgemeine Java-Themen 5
MQue JScrollPane in East Allgemeine Java-Themen 2
P JScrollPane Allgemeine Java-Themen 3
M Nummer eine Componente in JScrollPane ermitteln Allgemeine Java-Themen 4
B JScrollPane in einer JTable aktualisieren? Allgemeine Java-Themen 9
P JTabbedPane in JScrollPane Allgemeine Java-Themen 3
G JTextArea im JScrollpane automatisch mitscrollen Allgemeine Java-Themen 4
N JTable & JScrollPane - Wie den Header anpassen? Allgemeine Java-Themen 4
S JEditorPane / JScrollPane und nach unten scrollen Allgemeine Java-Themen 3

Ähnliche Java Themen

Neue Themen


Oben