Vertikale Scrollbar erstellen, die immer sichtbar ist

philbo

Mitglied
Hallo mal wieder...
ich will bei meiner JTable eine vertikale Bildlaufleiste haben.
Zur Zeit Füge ich die mit mytable.setAutoscrolls(true); hinzu.
Die erscheint allerdings dann natürlich nur, wenn sie benötigt wird (wenn die Inhalte mehr Platz benötigen, als die JTable groß ist).
Wie kann ich die denn permanent hinzufügen? Hab es eben mit mytable.add(new Scrollbar(...)) versucht, aber die erscheint auch nicht immer, sondern nur, wenn es zu viele Inhalte sind.

Geht bestimmt ganz einfach - aber wie?!

Danke und Gruß
Philipp
 
Hallo!

Schau mal hier:

Code:
import java.awt.BorderLayout;
import java.awt.Dimension;

import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;

/**
 * @author      Darimont<br>
 */

public class JTableExample extends JFrame {  
                  //30 Zeilen, 4 Spalten
	private final JTable table = new JTable(30, 4);
	private final JScrollPane scrollPane;

	public JTableExample() {
		super("JTableExample");
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		scrollPane = new JScrollPane();
		scrollPane.setPreferredSize(new Dimension(320, 240));
		table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
		scrollPane.getViewport().add(table, BorderLayout.CENTER);
		getContentPane().add(scrollPane);
		pack();
		setVisible(true);
	}

	public static void main(String[] args) {
		new JTableExample();
	}
}

Gruß Tom
 
Hi!
mytable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF)
hab ich bei mir ja auch schon drin, aber trotzdem ist die Vertikale scrollbar nicht immer da.

Code:
	mytable = new JTable();
	String[] Tabellenkopf = {"Nr","Typ", "Kurzbezeichnung", "Beschreibung", "Raum", "Standort", "Ausleiher", "Leihdatum"};
	tablemodel = new MyModel();
	tablemodel.setColumnIdentifiers(Tabellenkopf);
	mytable.setModel(tablemodel);
	mytable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
	mytable.setAutoscrolls(true);

Philipp
 
Hallo!

Gaaaaanz easy:

schau mal hier bei hier: ;-)

Code:
import java.awt.BorderLayout;
import java.awt.Dimension;

import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;

/**
 * @author      Darimont<br>
 */

public class JTableExample extends JFrame {
	private final JTable table = new JTable(5, 4);
	private final JScrollPane scrollPane;

	public JTableExample() {
		super("JTableExample");
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		scrollPane = new JScrollPane();
		//HIER
		scrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
		scrollPane.setPreferredSize(new Dimension(320, 240));
		table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
		scrollPane.getViewport().add(table, BorderLayout.CENTER);
		getContentPane().add(scrollPane);
		pack();
		setVisible(true);
	}

	public static void main(String[] args) {
		new JTableExample();
	}
}

Gruß Tom
 
Zurück