Swing ScrollPane unterschlägt Großteil der Tabelle

_dp

Mitglied
Hallo!

Meine Applikation besteht aus einer GUI mit Tabelle.
Beim Start der Applikation wird die Gui aufgebaut und initialisiert, eine leere Tabelle wird gezeichnet und mein Datenbankobjekt welches von AbstractTableModle erbt, also TableModel gesetzt.

Im Anschluss wird in einem eigenen Thread aus einer großen xml Datei eine Vielzahl von Objekten eingelesen, was einige Sekunden dauern kann. Wenn dies abgeschlossen ist, wird die Tabelle mit den neuen Objekten (momentan 2300 an der Zahl) geupdated.
Das updaten geschieht mit der Funktion
Java:
fireTableDataChanged();
und die komplette Prozedur die das Einlesen und Verarbeiten der xml Datei anstößt steht in einem Thread:
Java:
		Database databaseFrame = new Database();
		databaseFrame.setQuestDatabase(qdb);
		databaseFrame.initGUI();
		databaseFrame.setVisible(true);
			
		
		SwingUtilities.invokeLater(new Runnable() {
			@Override
			public void run() {

				try {

					// TODO: Move somewhere else
					
					File x = new File("packages/Quests.xml");
					InputStream in;
					in = new FileInputStream(x);
					XMLInputFactory factory = XMLInputFactory.newInstance();
					factory.setProperty("javax.xml.stream.isValidating", false);
					XMLStreamReader parser = factory.createXMLStreamReader(in);
					
					qdb.readDatabaseFromXmlReader(parser);

				} catch (Exception e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}

			}
		});

Die GUI lass ich mir mit Jigloo generieren und der Teil mit der jScrollPane -> jTable sieht so aus:
Java:
{
							jQuestDatabaseTable = new JTable();
							//jQuestTableScrollPane.setViewportView(jQuestDatabaseTable);
							jQuestTableScrollPane = new JScrollPane(jQuestDatabaseTable);
							jQuestDatabaseTable.setModel(getQuestDatabase());
							jQuestDatabaseTable.setDebugGraphicsOptions(DebugGraphics.BUFFERED_OPTION);
							jQuestDatabaseTable.setPreferredSize(new java.awt.Dimension(751, 525));
							jQuestDatabaseTable.setFillsViewportHeight(true);
						}

Soweit so gut, funktioniert bis hierhin auch. GUI wird komplett erzeugt, Dateien verarbeitet und in der Tabelle aktualisiert.

Problem:
Das einzige was nicht aktualisiert wird sind die Scrollbars. Sie bleiben in dem Umfang einer leeren Tabelle, nachdem ich ca. 2300 Objekte der Tabelle hinzugefügt habe, bekomme ich eben nur den Bruchteil zu sehen, der gerade für das erste Anzeigen der Tabelle abgefragt wurde.

Da ich von meiner TableModel Klasse keine Referenz auf die databaseFrame Klasse oder deren Objekte wie die Tabelle oder das ScrollPane direkt habe, kann ich deren redraw Methoden auch nicht direkt aufrufen.

Daher:
Wie kann ich die ScrollPane implizit aktualisieren lassen ohne meine Programmstruktur groß umbauen zu müssen?


Danke für Antworten.
 

DanZ

Bekanntes Mitglied
Hi,

du setzt die PrefferedSize der Table am Start:

Java:
jQuestDatabaseTable.setPreferredSize(new java.awt.Dimension(751, 525));

Offenbar nimmt die Table dies zum Anlass, die Size selber nicht mehr beim relayouten selbst einzustellen. Das ScrollPane orientiert sich beim berechnen der Scrollbars etc. aber an der PreferredSize der Table.
 

_dp

Mitglied
Hmm... selstamerweise brauchte ich diese Zeile, damit die Scrollbar und die Spaltenüberschriften überhaupt angezeigt werden.

Wie würde man es denn richtig machen? Die preferredSize des gesamten Blocks weiß ich. Muss ich die nur der ScrollPane mitteilen? Brauch die Tabelle die Breite auch? Denn die Tabelle soll ja nur nach unten scrollen, nicht in die Breite. Hmm

//edit: Jo, wenn ich statt der Tabelle dem ScrollPane die preferredSize gebe, verschwindet der Scrollbalken ganz. Nicht gut :(
 

DanZ

Bekanntes Mitglied
Die Tabelle passt sich in der Breite normalerweise automatisch dem ScrollPane an, wie genau kannst du einstellen(beispielsweise durch das setFillsViewportHeight()).
Um dir zu sagen wie du es richtig machst, wäre der gesamte UI Code hilfreich. So weiß ich überhaupt wie und wo das Scrollpane ins Frame kommt.
 

_dp

Mitglied
Ok ich paste dir einfach mal die komplette initGui Methode die mir Jigloo generiert hat:

In Zeile 52-54 entsteht die Tabelle und das Scrollpane.
Das getQuestDatabase() in Zeile 55 liefert mir die Datenbank, die von AbstractTableModel erbt.

Java:
	public void initGUI() {
		try {
			setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
			{
				jTabbedPane1 = new JTabbedPane();
				getContentPane().add(jTabbedPane1, BorderLayout.CENTER);
				{
					jQuestPanel = new JPanel();
					GroupLayout jQuestPanelLayout = new GroupLayout((JComponent)jQuestPanel);
					jQuestPanel.setLayout(jQuestPanelLayout);
					jTabbedPane1.addTab("Quests", null, jQuestPanel, null);
					{
						jLabel_showing = new JLabel();
						jLabel_showing.setText("{SHOWING}");
					}
					{
						jQuestFilter = new JButton();
						jQuestFilter.setText("{FILTER}");
						jQuestFilter.addMouseListener(new MouseAdapter() {
							public void mouseClicked(MouseEvent evt) {
								System.out.println("jQuestFilter.mouseClicked, event="+evt);
								jQuestFilterPopupMenu.setVisible(true);
							}
						});
						{
							jQuestFilterPopupMenu = new JPopupMenu();
							setComponentPopupMenu(jQuestFilter, jQuestFilterPopupMenu);
							{
								jQuestFilterPopupMenuItem_repeatable = new JCheckBoxMenuItem();
								jQuestFilterPopupMenuItem_repeatable.setText("{REPEATABLE}");
								jQuestFilterPopupMenuItem_story = new JCheckBoxMenuItem();
								jQuestFilterPopupMenuItem_story.setText("{STORY}");
								jQuestFilterPopupMenu.add(jQuestFilterPopupMenuItem_repeatable);
								jQuestFilterPopupMenu.add(jQuestFilterPopupMenuItem_story);
							}
						}
						
					}
					{
						jLabel_quests = new JLabel();
						jLabel_quests.setText("{QUESTS}");
					}
					{
						ComboBoxModel jQuestZoneFilterComboboxModel = 
							new DefaultComboBoxModel(
									new String[] { "No Zones loaded" });
						jQuestZoneFilterCombobox = new JComboBox();
						jQuestZoneFilterCombobox.setModel(jQuestZoneFilterComboboxModel);
					}
					{
						{
							jQuestDatabaseTable = new JTable();
							//jQuestTableScrollPane.setViewportView(jQuestDatabaseTable);
							jQuestTableScrollPane = new JScrollPane(jQuestDatabaseTable);
							jQuestDatabaseTable.setModel(getQuestDatabase());
							jQuestDatabaseTable.setDebugGraphicsOptions(DebugGraphics.BUFFERED_OPTION);
							jQuestDatabaseTable.setFillsViewportHeight(true);
							jQuestTableScrollPane.setPreferredSize(new java.awt.Dimension(751, 525));
						}
					}
					jQuestPanelLayout.setHorizontalGroup(jQuestPanelLayout.createSequentialGroup()
						.addContainerGap()
						.addGroup(jQuestPanelLayout.createParallelGroup()
						    .addGroup(GroupLayout.Alignment.LEADING, jQuestPanelLayout.createSequentialGroup()
						        .addComponent(jLabel_showing, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE)
						        .addGap(0, 28, Short.MAX_VALUE)
						        .addComponent(jQuestFilter, GroupLayout.PREFERRED_SIZE, 86, GroupLayout.PREFERRED_SIZE)
						        .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
						        .addComponent(jLabel_quests, GroupLayout.PREFERRED_SIZE, 143, GroupLayout.PREFERRED_SIZE)
						        .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
						        .addComponent(jQuestZoneFilterCombobox, GroupLayout.PREFERRED_SIZE, 156, GroupLayout.PREFERRED_SIZE)
						        .addGap(255))
						    .addGroup(jQuestPanelLayout.createSequentialGroup()
						        .addComponent(jQuestTableScrollPane, GroupLayout.PREFERRED_SIZE, 754, GroupLayout.PREFERRED_SIZE)
						        .addGap(0, 0, Short.MAX_VALUE)))
						.addContainerGap(237, 237));
					jQuestPanelLayout.setVerticalGroup(jQuestPanelLayout.createSequentialGroup()
						.addContainerGap()
						.addGroup(jQuestPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE)
						    .addComponent(jQuestFilter, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE)
						    .addComponent(jLabel_showing, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE)
						    .addComponent(jLabel_quests, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE)
						    .addComponent(jQuestZoneFilterCombobox, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE))
						.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
						.addComponent(jQuestTableScrollPane, GroupLayout.PREFERRED_SIZE, 528, GroupLayout.PREFERRED_SIZE)
						.addContainerGap(139, Short.MAX_VALUE));
				}
				{
					jNpcPanel = new JPanel();
					jTabbedPane1.addTab("NPCs", null, jNpcPanel, null);
				}
				{
					jItemPanel = new JPanel();
					jTabbedPane1.addTab("Items", null, jItemPanel, null);
				}
			}
			{
				jMainMenu = new JMenuBar();
				setJMenuBar(jMainMenu);
				{
					jMenu1 = new JMenu();
					jMainMenu.add(jMenu1);
					jMenu1.setText("jMenu1");
				}
			}
			pack();
			setSize(1024, 800);
		} catch (Exception e) {
		    //add your error handling code here
			e.printStackTrace();
		}
	}
 

DanZ

Bekanntes Mitglied
Ich hab das mal versucht nachzubauen, und bei mir funktioniert es, wenn ich dem ScrollPane die preferdSize gebe.
Vielleicht solltest du dann aber die Werte aus dem Layout verwenden, also 754,528.

Ansonsten fällt mir da grad nichts ein, wie groß ist das Frame? Ist bei einem absoluten Layout ja auch ganz wichtig.
 

_dp

Mitglied
Jetzt bin ich verwirrt. Wie kommst du auf 754, 528? Ich mein, 754 find ich im Code, dort wo der ScrollPane zu seinem parent component hinzugefügt wird...

Ich hab mal etwas rumgespielt und den beiden verschiedene preferredSize Werte gegeben, irgendwann hat sich meine Tabelle dann gar nicht mehr neu zeichnen wollen, dann hab ich das wieder auf den Ausgangszustand von vorhin zurückgesetzt (siehe unten)
Wenn ich jetzt so starte, habe ich keinen scrollbalken, wenn ich der Tabelle eine preferred Size gebe, tritt das angesprochene Problem auf, dass der Scrollbalken nur einen Bruchteil der Tabelle abdeckt. So ganz hab ich die Wechselwirkung zw. Scrollbalken und Tabelle nicht verstanden.
Muss ich die Breite der Scrollbalken von der Tabellenbreite noch abziehen oder sowas?
*confused*

Java:
	public void initGUI() {
		try {
			setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
			{
				jTabbedPane1 = new JTabbedPane();
				getContentPane().add(jTabbedPane1, BorderLayout.CENTER);
				{
					jQuestPanel = new JPanel();
					GroupLayout jQuestPanelLayout = new GroupLayout((JComponent)jQuestPanel);
					jQuestPanel.setLayout(jQuestPanelLayout);
					jTabbedPane1.addTab("Quests", null, jQuestPanel, null);
					{
						jLabel_showing = new JLabel();
						jLabel_showing.setText("{SHOWING}");
					}
					{
						jQuestFilter = new JButton();
						jQuestFilter.setText("{FILTER}");
						jQuestFilter.addMouseListener(new MouseAdapter() {
							public void mouseClicked(MouseEvent evt) {
								System.out.println("jQuestFilter.mouseClicked, event="+evt);
								jQuestFilterPopupMenu.setVisible(true);
							}
						});
						{
							jQuestFilterPopupMenu = new JPopupMenu();
							setComponentPopupMenu(jQuestFilter, jQuestFilterPopupMenu);
							{
								jQuestFilterPopupMenuItem_repeatable = new JCheckBoxMenuItem();
								jQuestFilterPopupMenuItem_repeatable.setText("{REPEATABLE}");
								jQuestFilterPopupMenuItem_story = new JCheckBoxMenuItem();
								jQuestFilterPopupMenuItem_story.setText("{STORY}");
								jQuestFilterPopupMenu.add(jQuestFilterPopupMenuItem_repeatable);
								jQuestFilterPopupMenu.add(jQuestFilterPopupMenuItem_story);
							}
						}
						
					}
					{
						jLabel_quests = new JLabel();
						jLabel_quests.setText("{QUESTS}");
					}
					{
						ComboBoxModel jQuestZoneFilterComboboxModel = 
							new DefaultComboBoxModel(
									new String[] { "No Zones loaded" });
						jQuestZoneFilterCombobox = new JComboBox();
						jQuestZoneFilterCombobox.setModel(jQuestZoneFilterComboboxModel);
					}
					{
						{
							jQuestDatabaseTable = new JTable();
							jQuestTableScrollPane = new JScrollPane(jQuestDatabaseTable);
							jQuestTableScrollPane.setPreferredSize(new java.awt.Dimension(754, 528));
							jQuestDatabaseTable.setModel(getQuestDatabase());
							jQuestDatabaseTable.setDebugGraphicsOptions(DebugGraphics.BUFFERED_OPTION);
							jQuestDatabaseTable.setFillsViewportHeight(true);
						}
					}
					jQuestPanelLayout.setHorizontalGroup(jQuestPanelLayout.createSequentialGroup()
						.addContainerGap()
						.addGroup(jQuestPanelLayout.createParallelGroup()
						    .addGroup(GroupLayout.Alignment.LEADING, jQuestPanelLayout.createSequentialGroup()
						        .addComponent(jLabel_showing, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE)
						        .addGap(0, 28, Short.MAX_VALUE)
						        .addComponent(jQuestFilter, GroupLayout.PREFERRED_SIZE, 86, GroupLayout.PREFERRED_SIZE)
						        .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
						        .addComponent(jLabel_quests, GroupLayout.PREFERRED_SIZE, 143, GroupLayout.PREFERRED_SIZE)
						        .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
						        .addComponent(jQuestZoneFilterCombobox, GroupLayout.PREFERRED_SIZE, 156, GroupLayout.PREFERRED_SIZE)
						        .addGap(255))
						    .addGroup(jQuestPanelLayout.createSequentialGroup()
						        .addComponent(jQuestTableScrollPane, GroupLayout.PREFERRED_SIZE, 754, GroupLayout.PREFERRED_SIZE)
						        .addGap(0, 0, Short.MAX_VALUE)))
						.addContainerGap(237, 237));
					jQuestPanelLayout.setVerticalGroup(jQuestPanelLayout.createSequentialGroup()
						.addContainerGap()
						.addGroup(jQuestPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE)
						    .addComponent(jQuestFilter, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE)
						    .addComponent(jLabel_showing, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE)
						    .addComponent(jLabel_quests, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE)
						    .addComponent(jQuestZoneFilterCombobox, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE))
						.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
						.addComponent(jQuestTableScrollPane, GroupLayout.PREFERRED_SIZE, 528, GroupLayout.PREFERRED_SIZE)
						.addContainerGap(139, Short.MAX_VALUE));
				}
				{
					jNpcPanel = new JPanel();
					jTabbedPane1.addTab("NPCs", null, jNpcPanel, null);
				}
				{
					jItemPanel = new JPanel();
					jTabbedPane1.addTab("Items", null, jItemPanel, null);
				}
			}
			{
				jMainMenu = new JMenuBar();
				setJMenuBar(jMainMenu);
				{
					jMenu1 = new JMenu();
					jMainMenu.add(jMenu1);
					jMenu1.setText("jMenu1");
				}
			}
			pack();
			setSize(1024, 800);
		} catch (Exception e) {
		    //add your error handling code here
			e.printStackTrace();
		}
	}
 

_dp

Mitglied
OK interessantes Detail welches ich gerade entdeckte:

Wenn ich aus Zeile 57 das
Java:
jQuestDatabaseTable.setFillsViewportHeight(true);
Auskommentiere, wird ja wie schon weiter oben bemerkt, meine Tabelle nicht mehr gezeichnet.
Wie ich eben herausfand, zeichnet sie sich erst, wenn ich die Breite der Spaltenköpfe einmal kurz ändere. Dann bekomme ich nämlich das korrekte Scrollpane wie es eigentlich sein sollte!

Dann hab ich auf Verdacht das
Java:
jQuestDatabaseTable.setFillsViewportHeight(true);
Wieder eingesetzt, bekomme meine Liste die korrekt gezeichnet und geupdated wird, allerdings ohne Scrollbalken.
Wieder einen der Spaltenköpfe resized, siehe da: Scrollbalken taucht auf, richtige Größe.

Also irgendwas stimmt da mit den Größen nicht.

Dann hab ich mir mal aus dem laufenden Programm ausgeben lassen was die Tabellenbreite vor und nach dem Einspielen der Tabellendaten sagt.
Leere Tabelle: 751px
Volle Tabelle ohne Scrollbalken: 751px
Nach resize der Column mit Scrollbalken: 735px

Also versucht der Tabelle eine preferredSize zu geben:
Java:
jQuestDatabaseTable.setPreferredSize(new java.awt.Dimension(735, 525));
Ergebnis:
Scrollbalken da, aber das Problem ist wie ganz am Anfang: Die scrollbar ist zu klein :/

Dann nochmal mit Height=0 probiert, auf den Verdacht hin dass er sich die Größe ja schon selbst sucht:
Java:
jQuestDatabaseTable.setPreferredSize(new java.awt.Dimension(735, 0));
Ergebnis:
Liste da, kein Scrollbalken und auch kein Scrollbalken wenn man die colums resized.

Langsam bin ich mit meinem Latein am Ende. Vielleicht wär ja jemand so gütig und gibt mir ein paar Codebeispiele die funktionieren.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
E GridLayout auf ScrollPane AWT, Swing, JavaFX & SWT 4
N Einer TextArea ein ScrollPane hinzufügen AWT, Swing, JavaFX & SWT 8
TheWhiteShadow JavaFX ScrollPane nimmt nicht genug platz ein AWT, Swing, JavaFX & SWT 3
J Gridpane Breite in Scrollpane automatisch anpassen AWT, Swing, JavaFX & SWT 2
E JavaFX Cursor-Position im ScrollPane AWT, Swing, JavaFX & SWT 0
E Swing Liste in Scrollpane wird nicht angezeigt AWT, Swing, JavaFX & SWT 2
C JavaFX ScrollPane schießt über das Ziel hinaus... AWT, Swing, JavaFX & SWT 1
DaCrazyJavaExpert Swing Zwei gleichgroße Panels in einem Scrollpane mit Layout AWT, Swing, JavaFX & SWT 9
T JavaFX Zoom in ScrollPane AWT, Swing, JavaFX & SWT 1
L Java FX Scrollpane automatisch resizen AWT, Swing, JavaFX & SWT 3
P Java ScrollPane und ViewPort AWT, Swing, JavaFX & SWT 2
M JavaFX Scrollpane: Style von Contentpanel default AWT, Swing, JavaFX & SWT 1
S JavaFX Image Skalierung in Scrollpane, Scrollpane resized sich nicht AWT, Swing, JavaFX & SWT 5
V Netbeans: TabbedPane, ScrollPane und Graphics AWT, Swing, JavaFX & SWT 4
S passende PaintComponent ? Zeichnen in TextArea mit Scrollpane ? AWT, Swing, JavaFX & SWT 2
O ScrollPane AWT, Swing, JavaFX & SWT 2
W JavaFX Scrollpane elementweise scrollen AWT, Swing, JavaFX & SWT 4
M SWT ScrollPane Größe zu klein AWT, Swing, JavaFX & SWT 6
Z Swing Welcher Layoutmanager bei ScrollPane? AWT, Swing, JavaFX & SWT 4
S ScrollPane in Textarea und auf Panel AWT, Swing, JavaFX & SWT 4
Bluedaishi Synchrone ScrollPane trennen AWT, Swing, JavaFX & SWT 2
G JTable als fixierte Spalte in Scrollpane scrollt nicht mit... AWT, Swing, JavaFX & SWT 1
M MouseListener auf table oder scrollPane AWT, Swing, JavaFX & SWT 11
W Swing Nicht-Editierbares Textfeld in Panel in ScrollPane AWT, Swing, JavaFX & SWT 9
W Swing Zum Ende einer Scrollpane scrollen AWT, Swing, JavaFX & SWT 2
S Bestimmten Bereich eines Bildes im JFrame mit Scrollpane anzeigen AWT, Swing, JavaFX & SWT 0
Kenan89 Vertikal und horizontal zentrierter Pane in ScrollPane AWT, Swing, JavaFX & SWT 5
Kenan89 Java FX ScrollPane Content mittig setzen AWT, Swing, JavaFX & SWT 5
P ScrollPane nach zeichnen dynamisch resize AWT, Swing, JavaFX & SWT 7
O Swing GroupLayout und Scrollpane AWT, Swing, JavaFX & SWT 3
T scrollpane taucht nicht auf AWT, Swing, JavaFX & SWT 6
D Zoom zur Mouseposition in ScrollPane AWT, Swing, JavaFX & SWT 5
F AWT ScrollPane Problem AWT, Swing, JavaFX & SWT 3
S Swing Bild in JPanel in ScrollPane neu zeichnen AWT, Swing, JavaFX & SWT 2
S Canvas in ScrollPane wird beim scrollen immer neu gezeichnet AWT, Swing, JavaFX & SWT 3
D JTable in Scrollpane AWT, Swing, JavaFX & SWT 3
H ScrollPane AWT, Swing, JavaFX & SWT 3
0 JTable im ScrollPane AWT, Swing, JavaFX & SWT 3
S Swing Scrollpane und JTables AWT, Swing, JavaFX & SWT 6
D Swing JList: ScrollPane auf JPanel ansprechen AWT, Swing, JavaFX & SWT 7
Spin JTable Header wird nicht angezeigt ohne ScrollPane AWT, Swing, JavaFX & SWT 3
F Swing Mehrere Textfelder in Scrollpane einfügen und dann zum Scrollen bringen? AWT, Swing, JavaFX & SWT 4
T ScrollPane Lösgelöst vom JPanel?!? AWT, Swing, JavaFX & SWT 4
D Panel zu Scrollpane adden AWT, Swing, JavaFX & SWT 8
T LayoutManager Panel in Scrollpane mittig ausrichten AWT, Swing, JavaFX & SWT 2
E JList in ScrollPane auf größe bringen AWT, Swing, JavaFX & SWT 5
A ScrollPane + internalFrame AWT, Swing, JavaFX & SWT 2
H ScrollPane scrollt ungefragt drauf los! AWT, Swing, JavaFX & SWT 5
T ScrollPane scrollt nicht einwandfrei AWT, Swing, JavaFX & SWT 3
G ScrollPane: getPreferredSize() AWT, Swing, JavaFX & SWT 11
M Labels in ScrollPane mit Linie verbinden AWT, Swing, JavaFX & SWT 2
P ScrollPane klappt zusammen beim verkleinern des Frames AWT, Swing, JavaFX & SWT 2
S Swing JTree in ScrollPane einen ToolTip geben AWT, Swing, JavaFX & SWT 2
T ScrollBar aus ScrollPane verstecken AWT, Swing, JavaFX & SWT 2
N ScrollPane in ein Fenster einfügen AWT, Swing, JavaFX & SWT 2
N ScrollPane passt sich nicht an AWT, Swing, JavaFX & SWT 4
D ScrollPane Anpassungen AWT, Swing, JavaFX & SWT 7
M Problem mit jPanel (FlowLayout) in ScrollPane AWT, Swing, JavaFX & SWT 4
K TextArea auf Scrollpane AWT, Swing, JavaFX & SWT 3
G Tabellenköpfe trotz Scrollpane ausschalten AWT, Swing, JavaFX & SWT 5
P Automatisches Mitscrollen der ScrollPane AWT, Swing, JavaFX & SWT 2
M Problem beim Einsatz von ScrollPane (Fenster spielt verrückt AWT, Swing, JavaFX & SWT 2
R ImageViewer - Bild mit ScrollPane AWT, Swing, JavaFX & SWT 4
K Row und ColumnHeader in ScrollPane werden "verwischt&qu AWT, Swing, JavaFX & SWT 4
F Resize in ScrollPane AWT, Swing, JavaFX & SWT 4
M Swing: ScrollPane Button mit Pfeil ändern wie? AWT, Swing, JavaFX & SWT 2
F Scrollpane scrollt immer zur TextArea AWT, Swing, JavaFX & SWT 8
vogella JTable und JScrollPane - ScrollPane immer in der Mitte AWT, Swing, JavaFX & SWT 2
B Komponenten über ScrollPane hinaus angezeigt. AWT, Swing, JavaFX & SWT 3
S JTable (Scrollpane und ColumnNames) und JComboBox AWT, Swing, JavaFX & SWT 2
T Warum keine ScrollBars in diesem ScrollPane? AWT, Swing, JavaFX & SWT 3
A Scrollspeed bei Scrollpane erhöhen? AWT, Swing, JavaFX & SWT 2
A Scrollpane verschmiert beim scrollen AWT, Swing, JavaFX & SWT 5
P Resize von ScrollPane Inhalten AWT, Swing, JavaFX & SWT 2
S ScrollPane zeigt scrollbalken nicht an AWT, Swing, JavaFX & SWT 12
S Problem mit Scrollpane & Bild AWT, Swing, JavaFX & SWT 3
A JTable in ScrollPane scrollt nicht horizontal AWT, Swing, JavaFX & SWT 2
M JMenu verschwindet unter ScrollPane AWT, Swing, JavaFX & SWT 3
G jTable + ScrollPane (+ TableModel) AWT, Swing, JavaFX & SWT 7
G ScrollPane anfärben AWT, Swing, JavaFX & SWT 2
E Ärger mit ScrollPane, JTable und der Resize-Einstellung AWT, Swing, JavaFX & SWT 2
J Inhalt eines Scrollpane speichern AWT, Swing, JavaFX & SWT 3
M Eigen gemaltes JPanel im ScrollPane. klappt nicht. :-( AWT, Swing, JavaFX & SWT 10
M Wo bleibt mein ScrollPane? AWT, Swing, JavaFX & SWT 3
D Probleme mit TableLayoutManager und ScrollPane AWT, Swing, JavaFX & SWT 3
M Problem bei Verbinden v. jTable, ScrollPane u. JLabel AWT, Swing, JavaFX & SWT 5
G Anwendung um Scrollpane erweitern AWT, Swing, JavaFX & SWT 2
G Scrollpane in null-Layout einfügen AWT, Swing, JavaFX & SWT 5
N Frame in ScrollPane einfügen AWT, Swing, JavaFX & SWT 5
J Balken von ScrollPane immer unten AWT, Swing, JavaFX & SWT 6
Z Probleme mit eigenem Canvas und ScrollPane AWT, Swing, JavaFX & SWT 8

Ähnliche Java Themen

Neue Themen


Oben