JScrollPane immer ganz unten ausrichten

Status
Nicht offen für weitere Antworten.

chriss_2oo4

Mitglied
Hi,

der Inhalt der Komponente ist eine JTextPane. Allerdings füge ich nichts mit append(...) hinzu, jedes Mal wenn ich den Inhalt aktualisiere, erzeuge ich eine neue Instanz der JTextPane und dort soll die da scrollpane ganz unten ausgerichtet sein.

Lg Chriss
 
G

Guest

Gast
Du könntest zB die JScrollBar von der ScrollPane holen und dann scrlbar.setValue(scrlbar.getMaximum()) machen. Dann müsste er nach ganz unten gehen :)
 

chriss_2oo4

Mitglied
Hi,

das hab ich schon versucht, geht leider nicht:

Code:
javax.swing.JScrollBar theBar = this.jScrollPane1.getVerticalScrollBar();
		theBar.setValue(theBar.getMaximum());

Lg Chriss
 
G

Gast

Gast
geht schon, machs aber lieber so:

Code:
SwingUtilities.invokeLater( new Runnable() {
  public void run() { theBar.setValue(theBar.getMaximum()); } } );
 
G

Guest

Gast
Und wie kann ich eine JScrollPane immer ganz oben ausrichten?
 
G

Guest

Gast
@ Tobias

wenn ich getMinimum() aufrufe, kennt der Compiler die Methode nicht.

Das sieht dann bei mir so aus:

Code:
SwingUtilities.invokeLater( new Runnable() {
  public void run() { reiter1Pane.setValue(reiter1Pane.getMinimum()); } } );
 

Tobias

Top Contributor
Du solltest getMinimum() auch auf der ScrollBar aufrufen und nicht auf irgendeinem Objekt. Vollzieh mal den Thread bis hierher nach und setz die für das Maximum-Problem gegebene Lösung auf dein Minimum-Problem um. Es ist nur die eine Methode, die du austauschen mußt, also wirklich nicht weiter schwierig.

mpG
Tobias
 
G

Guest

Gast
Code:
reiter1Pane
ist bei mir ein JScrollPane. Da müsste das doch auch gehen oder?
 

thE_29

Top Contributor
Ne, das müssen die JScrollbar´s sein! Also der horizontale oder vertikale! (getVertical/Horizontalscrollbar)
 

chriss_2oo4

Mitglied
Hi,

ich hab mir jetzt mal den Wert der von der Methode getMaximum() anzeigen lassen, der ist immer 204, daran wird auch das Problem liegen.

Vorgehensweise meines Programms: immer wenn ich den Inhalt der HTML-Datei ändere, die ich im JTextPane anzeige, führe ich folgende Methode aus:

Code:
public void ReloadTxtChat()
	{
		txtChat = new JTextPane();
		jScrollPane1.setViewportView(txtChat);
		txtChat.setBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED));
		txtChat.setContentType("text/html");
		txtChat.setEditable(false);
		try
		{
			java.io.File filePath = new java.io.File(Main.DIR_DATA, strFilename);
			java.net.URL urlPath = filePath.toURL();
			txtChat.setPage(urlPath.toString());
		}
		catch(Exception e)
		{
			e.printStackTrace();
		}
		
		SwingUtilities.invokeLater( new Runnable() 
		{
			public void run() 
			{
				javax.swing.JScrollBar theBar = jScrollPane1.getVerticalScrollBar();
				theBar.setValue(theBar.getMaximum());
				System.out.println("Maximum"+theBar.getMaximum());
			}
		});
	}

Dabei ist ja schon komisch, dass ich die Komponente txtChat jedes Mal neu erzeugen muss, dass der geänderte Inhalt der HTML-Datei angezeigt wird. Normalerweise müsste doch setPage(...) schon ausreichen, also der Teil oberhalb des Try-Blocks weglassen werden können.

In der Methode initGui() werden die Komponenten (JScrollPane und JTextPane) wie gefolgt erzeugt:

Code:
private JScrollPane getJScrollPane1() 
	{
		if(jScrollPane1 == null) 
		{
			jScrollPane1 = new JScrollPane();
			{
				txtChat = new JTextPane();
				jScrollPane1.setViewportView(txtChat);
				txtChat.setBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED));
				txtChat.setContentType("text/html");
				txtChat.setEditable(false);
			}
		}
		return jScrollPane1;
	}

Bin froh über jede Hilfe bzgl. meines Problems.

Lg Chriss
 

chriss_2oo4

Mitglied
Sobald ich die Größe des Fensters ändere, ändert sich auch der Wert, der von getMaximum() zurückgegeben wird.

Das Frame ist mit einem GridBag-Layout-Manager gestaltet. Das JScrollpane wird wie gefolgt zum Frame hinzugefügt:

Code:
getContentPane().add(getJScrollPane1(), new GridBagConstraints(1, 3, 6, 4, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(0, 0, 0, 0), 0, 0));


Lg Chriss
 

Tobias

Top Contributor
Setz mal das StreamDescriptionProperty auf null bevor du setPage() aufrufst. Laut API erzwingst du damit ein Neuladen der Seite.

Code:
Document doc = jEditorPane.getDocument();
   doc.putProperty(Document.StreamDescriptionProperty, null);

mpG
Tobias
 

chriss_2oo4

Mitglied
Hi,

danke für den Tipp, somit muss ich nicht immer die Komponente neu erzeugen.

Allerdings ändert sich die Größe des JTextPanes immer noch nicht. Ist irgendwie komisch, die Scrollbar erscheint sobald ich mehr Text eingebe als angezeigt werden kann, aber jTextPane.getSize().heigth liefert immer den gleichen Wert?

Lg
 

Tobias

Top Contributor
getSize().height ist die Höhe, die die graphische Repräsentation der TextPane auf dem Bildschirm einnimmt. Die ändert sich nicht, nur weil du was hinzufügst (zumindest nicht, wenn eine ScrollPane vorhanden ist).

mpG
Tobias
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M JScrollPane immer bis ganz nach unten scrollen lassen AWT, Swing, JavaFX & SWT 5
B JScrollPane scrollt nicht immer automatisch AWT, Swing, JavaFX & SWT 2
A Scrollbalken von JScrollPane immer anzeigen AWT, Swing, JavaFX & SWT 2
vogella JTable und JScrollPane - ScrollPane immer in der Mitte AWT, Swing, JavaFX & SWT 2
volcanos Scrollen: JScrollPane mit Graphics g und Java-Fonts extends Frame ? AWT, Swing, JavaFX & SWT 5
E JScrollPane mit JPanel verbinden AWT, Swing, JavaFX & SWT 1
B Swing JScrollPane scrollt nicht AWT, Swing, JavaFX & SWT 10
P JTextarea (in JScrollPane) zeigt nur die beiden letzten Einträge an? AWT, Swing, JavaFX & SWT 0
O Swing "Eigenes" JPanel wird dem JScrollPane nicht hinzugefügt AWT, Swing, JavaFX & SWT 5
E Komponenten von JScrollPane werden nicht richtig ermittelt AWT, Swing, JavaFX & SWT 2
E wie in JScrollPane auf JTextArea zugreifen AWT, Swing, JavaFX & SWT 12
N Swing JScrollPane mit Tastatur bedienen? AWT, Swing, JavaFX & SWT 0
F JScrollPane anzeige AWT, Swing, JavaFX & SWT 7
K Swing JScrollPane wird nicht angezeigt wenn man Components darstellt. AWT, Swing, JavaFX & SWT 2
M Swing JPanel in JScrollPane AWT, Swing, JavaFX & SWT 3
M Problem mit Add JScrollPane AWT, Swing, JavaFX & SWT 25
P Swing JEditorPane in Kombination mit JScrollPane AWT, Swing, JavaFX & SWT 29
S Swing jScrollPane - pro Eintrag der Liste, die jCheckBoxes Speichern die in dem Eintrag aktiviert wurden AWT, Swing, JavaFX & SWT 2
T Swing Probleme mit repaint() bzw. JScrollPane AWT, Swing, JavaFX & SWT 7
D JScrollPane in JTabbedPane AWT, Swing, JavaFX & SWT 3
MaxG. Swing JScrollPane AWT, Swing, JavaFX & SWT 10
Soloeco Swing JScrollPane AWT, Swing, JavaFX & SWT 6
A Swing Probleme mit dem adden von JButtons zur JScrollPane AWT, Swing, JavaFX & SWT 2
A JScrollPane soll JPanel mit JButtons enthalten und eine Scollbar anzeigen AWT, Swing, JavaFX & SWT 1
J JScrollPane funktioniert nicht AWT, Swing, JavaFX & SWT 5
B LayoutManager GridBagLayout und JScrollPane AWT, Swing, JavaFX & SWT 5
Thallius JScrollPane Scrollpos setzen nach Neuzeichnen AWT, Swing, JavaFX & SWT 3
P MalProgramm mit JScrollPane und Canvas AWT, Swing, JavaFX & SWT 2
D Swing JScrollPane Tabelle ändern (2 Tabellen) AWT, Swing, JavaFX & SWT 7
U JScrollPane -> JTabbedPane u.A. AWT, Swing, JavaFX & SWT 3
A Layout-Manager, JScrollPane, ... Chaos AWT, Swing, JavaFX & SWT 5
V JScrollPane im zur Laufzeit verändernden JFrame AWT, Swing, JavaFX & SWT 0
W Swing Größenänderung vom JPanel im JScrollPane und anschließendes positionieren AWT, Swing, JavaFX & SWT 2
X Swing JButton's zum JScrollPane hinzufügen geht nicht. Bitte um Hilfe. AWT, Swing, JavaFX & SWT 9
G JTextArea mit JScrollPane wird nicht angezeigt AWT, Swing, JavaFX & SWT 2
K Swing JScrollPane - JScrollBar anzeigen, wenn Frame verkleinert wird AWT, Swing, JavaFX & SWT 3
N Swing Problem beim Scrollen mit JScrollPane AWT, Swing, JavaFX & SWT 6
Bluedaishi JScrollpane AWT, Swing, JavaFX & SWT 0
L JScrollPane scrollt nicht !! AWT, Swing, JavaFX & SWT 3
F JScrollPane Position setzen (x=0, y=0) AWT, Swing, JavaFX & SWT 2
R JScrollPane überdeckt JPanel? AWT, Swing, JavaFX & SWT 7
H JTree in JScrollPane passt sich nicht an Größe von JPanel an AWT, Swing, JavaFX & SWT 2
S JScrollPane und BorderLayout AWT, Swing, JavaFX & SWT 1
M Mehrere Jpanel in einem JScrollPane (Layout) AWT, Swing, JavaFX & SWT 2
W Swing JScrollPane für mein Fenster AWT, Swing, JavaFX & SWT 4
A Swing Probleme mit JScrollPane AWT, Swing, JavaFX & SWT 6
F JTable mit JScrollPane AWT, Swing, JavaFX & SWT 4
I JPanel in JScrollPane verkleinert sich leider nicht .... AWT, Swing, JavaFX & SWT 2
G JScrollPane bricht am Ende der Anzeige nicht um AWT, Swing, JavaFX & SWT 2
J Swing JTextPane mit JScrollPane auf JPanel scrollen nicht AWT, Swing, JavaFX & SWT 6
W Sichtbarer Bereich JScrollPane vs. JList AWT, Swing, JavaFX & SWT 3
B Swing JPanel in JScrollPane einfügen AWT, Swing, JavaFX & SWT 2
S 2D-Grafik Transparentes JScrollPane AWT, Swing, JavaFX & SWT 0
S 3D-Grafik 3d Grafik auf einem JPanel oder im JScrollPane AWT, Swing, JavaFX & SWT 1
R Ändern Default-Verhalten von JScrollpane in einer JScrollpane AWT, Swing, JavaFX & SWT 1
S JScrollPane --> Programm hängt sich beim scrollen auf AWT, Swing, JavaFX & SWT 2
A JScrollPane - ScrollBar Buttongröße verändern AWT, Swing, JavaFX & SWT 1
J Bilder auf JPanel (im JScrollPane) nacheinander laden AWT, Swing, JavaFX & SWT 0
A Swing JScrollPane Problem AWT, Swing, JavaFX & SWT 6
H Swing JScrollPane mit "viel Inhalt" scrollt zu langsam (inkl. See-For-Yourself.jar :D) AWT, Swing, JavaFX & SWT 2
T Swing JScrollPane in JPanel - Breite dynamisch, Höhe fix - wie? AWT, Swing, JavaFX & SWT 2
D Swing JScrollPane in JScrollPane - Problem AWT, Swing, JavaFX & SWT 3
K Bug in JScrollPane? AWT, Swing, JavaFX & SWT 4
T Swing JScrollPane Farbe der Scrollbar AWT, Swing, JavaFX & SWT 3
M JScrollPane Header AWT, Swing, JavaFX & SWT 3
G JScrollPane über JScrollPane AWT, Swing, JavaFX & SWT 2
V LayoutManager JScrollPane verwirft Elementanordnung AWT, Swing, JavaFX & SWT 3
B JScrollPane Problem AWT, Swing, JavaFX & SWT 2
D Swing JScrollPane AWT, Swing, JavaFX & SWT 7
H cardlayout und jscrollpane AWT, Swing, JavaFX & SWT 14
F 2D-Grafik Skalieren der Scrollbars beim Zoomen einer JScrollPane AWT, Swing, JavaFX & SWT 4
B JScrollPane Horizontal klappt nicht. AWT, Swing, JavaFX & SWT 4
G JScrollPane reagiert nicht auf Änderung der JPanel-Größe AWT, Swing, JavaFX & SWT 4
C jPanel auf jScrollPane zentrieren AWT, Swing, JavaFX & SWT 3
M Swing JScrollPane (Parent JTextArea) aktualisieren + neue Zeile AWT, Swing, JavaFX & SWT 5
U Swing JPane und JScrollpane in JSplitpane-Seite: Scrollen funktioniert nicht AWT, Swing, JavaFX & SWT 3
A Swing Korrekte JTable.rowAt(point) für JTable in JScrollPane AWT, Swing, JavaFX & SWT 5
D Label über JScrollPane AWT, Swing, JavaFX & SWT 3
S JScrollPane reagiert nicht AWT, Swing, JavaFX & SWT 3
X JScrollPane zu JTable hinzufügen AWT, Swing, JavaFX & SWT 16
H JScrollPane - JEditorPane und HTML-Tabelle AWT, Swing, JavaFX & SWT 2
D LayoutManager JScrollPane mit dynamischem Inhalt AWT, Swing, JavaFX & SWT 8
P Swing JScrollpane AWT, Swing, JavaFX & SWT 2
V Swing JScrollPane Viewport verschieben AWT, Swing, JavaFX & SWT 2
J JScrollPane Probleme AWT, Swing, JavaFX & SWT 3
S Swing JScrollPane verliert Scrollbars AWT, Swing, JavaFX & SWT 5
D Swing JTable in JScrollpane beliebig verbreitern AWT, Swing, JavaFX & SWT 5
A Swing Anzeige Text in JScrollpane AWT, Swing, JavaFX & SWT 8
J Swing Unteren Abstand für JTable in JScrollPane festlegen AWT, Swing, JavaFX & SWT 10
xehpuk Swing Line-wrapping von JTextPane (in JScrollPane) AWT, Swing, JavaFX & SWT 3
M JScrollPane Problem AWT, Swing, JavaFX & SWT 6
S Swing JScrollpane und ViewPort AWT, Swing, JavaFX & SWT 4
D JScrollPane funktioniert nicht AWT, Swing, JavaFX & SWT 12
X JScrollPane funzt net... AWT, Swing, JavaFX & SWT 5
H jscrollpane AWT, Swing, JavaFX & SWT 12
RELAXccc Swing JTree + JScrollPane, refresh Problem AWT, Swing, JavaFX & SWT 17
A Problem mit JScrollPane in einer JScrollpane AWT, Swing, JavaFX & SWT 4
B JScrollPane Problem AWT, Swing, JavaFX & SWT 25
T Swing JScrollPane- und Tabelle-Header Problem AWT, Swing, JavaFX & SWT 25
P Swing JScrollPane-Inhalt: Grösse anpassen AWT, Swing, JavaFX & SWT 6

Ähnliche Java Themen


Oben