JScrollPane überlagert andere Elemente

filth

Bekanntes Mitglied
Hallo,

ich habe in meiner GUI ein JScrollPane, auf dem liegt ein JPanel mit einem Gridlayout. Über dem JscrollPane befinden sich weitere Elemente in der GUI.

Sobald der vertikale Scrollbalken auftaucht und ich scrolle, überlagert der Inhalt vom Scrollpane das Element _über_ dem Scrollpane. Sprich der Inhalt verschwindet nicht nach oben beim Scrollen, sondern wandert einfach hoch.

Was mache ich falsch?

Code:
[Java]
private JScrollPane getJScrollPane1() {
if(jScrollPane1 == null) {
jScrollPane1 = new JScrollPane();
jScrollPane1.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
jScrollPane1.setDoubleBuffered(true);
{
imageArea = new JPanel();
jScrollPane1.setViewportView(imageArea);
imageAreaLayout.setHgap(5);
imageAreaLayout.setVgap(5);
imageAreaLayout.setColumns(1);
imageArea.setLayout(imageAreaLayout);
imageArea.setBackground(new java.awt.Color(43,89,105));
}
}
return jScrollPane1;
}
[/code]
 
S

SlaterB

Gast
das kann man wohl nur im Gesamtkontext erkennen, mit dem Layout drumherum,
am besten ein lauffähiges Testprogramm posten welches den Fehler vorführt
 

filth

Bekanntes Mitglied
Okay, ich habe das auf die Schnelle so weit wie möglich verschlankt.

Um den Fehler zu reproduzieren muss man auf "Bilder hinzufügen" klicken und dann eine Grafikdatei auswählen. Der Scrollbalken erscheint, dann scrollen.

Viele Grüße!
 

Anhänge

  • src.zip
    6,1 KB · Aufrufe: 1
S

SlaterB

Gast
GroupLayout gibts erst ab Java 1.6, da kann ich nicht helfen,

überhaupt ist die Hauptklasse mit 500 Zeilen viel zu groß, allein die Deklaration:
Java:
        private JList eventList;
	private JButton loginButton;
	private JLabel emailLabel;
	private JScrollPane jScrollPane1;
	private JButton addFilesButton;
	private JLabel addPicsLabel;
	private JLabel loginErrorLabel;
	private JButton abortButton;
	private JLabel passwordLabel;
	private JPasswordField passwordInput;
	private JTextField emailInput;
	private JPanel loginPanel;
	private JSeparator loginSeperator;
	private JLabel pleaseLoginLabel;
	private JLabel vnLogo;
	private JFrame loginWindow;
	private JTextPane eventInfoBox;
	private JLabel adminTypeLabel;
	private JLabel vnLogoLabel;
	private JButton logoutButton;
	private JLabel onlineStatusLabel;
	private JLabel scoutNameLabel;
	private JPanel imageArea;
	private JPanel connectionStatusPanel;
	private JButton startUploadButton;
	private JButton reloadEventsButton;
ist das onlineStatusLabel oder das emailInput-Textfeld wirklich essentiell für dieses Problem?,
wenn du es entfernst dann tritt des nicht mehr auf? glaube ich kaum,
das Programm zu vereinfachen ist durchaus eine Arbeit, halbe Stunde statt nur 5 Min. den Code zu posten,
aber das wäre Arbeit die du erledigen könntest um anderen die Suche zu erleichtern

vielleicht findet jemand mit Java 1.6 schnell den Fehler,
ich könnte durchaus 3/4 Komponenten umlayouten, aber nicht 126 Vorkommen des Wortes 'GroupLayout' ;)
 

filth

Bekanntes Mitglied
Ok, ich habe die Hauptklasse noch weiter verschlankt:

Java:
import java.awt.*;
import java.awt.event.ComponentAdapter;
import java.awt.event.ComponentEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.io.File;
import java.util.Vector;

import javax.swing.*;
import javax.swing.border.LineBorder;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;

/**
* This code was edited or generated using CloudGarden's Jigloo
* SWT/Swing GUI Builder, which is free for non-commercial 
* use. If Jigloo is being used commercially (ie, by a corporation,
* company or business for any purpose whatever) then you
* should purchase a license for each developer using Jigloo.
* Please visit [url=http://www.cloudgarden.com]Cloud Garden (Java Resources)[/url] for details.
* Use of Jigloo implies acceptance of these licensing terms.
* A COMMERCIAL LICENSE HAS NOT BEEN PURCHASED FOR
* THIS MACHINE, SO JIGLOO OR THIS CODE CANNOT BE USED
* LEGALLY FOR ANY CORPORATE OR COMMERCIAL PURPOSE.
*/
public class View extends javax.swing.JFrame {

	{
		//Set Look & Feel
		try {
			javax.swing.UIManager.setLookAndFeel("com.jgoodies.looks.plastic.Plastic3DLookAndFeel");
		} catch(Exception e) {
			e.printStackTrace();
		}
	}

	private JScrollPane jScrollPane1;
	private JButton addFilesButton;
	private JPanel imageArea;
	private Controller myController;	
	private GridLayout imageAreaLayout = new GridLayout(1, 1);
	
	public View(Controller myController) {
		super();
		initGUI();		
		
		this.setLocationRelativeTo(null);
		this.setVisible(true);
		
		this.myController = myController;
	}
	
	@SuppressWarnings("serial")
	private void initGUI() {
		
		try {
			setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);			
			
			GroupLayout thisLayout = new GroupLayout((JComponent)getContentPane());
			getContentPane().setLayout(thisLayout);
			thisLayout.setHorizontalGroup(thisLayout.createSequentialGroup()
				.addComponent(getAddFilesButton(), GroupLayout.PREFERRED_SIZE, 235, GroupLayout.PREFERRED_SIZE)
				.addComponent(getJScrollPane1(), GroupLayout.PREFERRED_SIZE, 737, Short.MAX_VALUE));
			thisLayout.setVerticalGroup(thisLayout.createSequentialGroup()
				.addContainerGap(70, 70)
				.addGroup(thisLayout.createParallelGroup()
				    .addGroup(thisLayout.createSequentialGroup()
				        .addGap(524, 524, 524)
				        .addComponent(getAddFilesButton(), GroupLayout.PREFERRED_SIZE, 32, GroupLayout.PREFERRED_SIZE))
				    .addComponent(getJScrollPane1(), GroupLayout.Alignment.LEADING, GroupLayout.PREFERRED_SIZE, 604, Short.MAX_VALUE)));
			getContentPane().setForeground(new java.awt.Color(192,192,192));
			getContentPane().setBackground(new java.awt.Color(37,81,95));
			pack();
			this.setSize(988, 712);
		} catch (Exception e) {
		    //add your error handling code here
			e.printStackTrace();
		}
	}
	
		

	private void addFilesButtonMouseClicked(MouseEvent evt) {
		JFileChooser chooser;

		chooser = new JFileChooser(); 
	    chooser.setCurrentDirectory(new java.io.File("."));
	    chooser.setDialogTitle("");
	    chooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
	    chooser.setMultiSelectionEnabled(true);
	    
	    int ret = chooser.showDialog(null, "Open file");

	    if (ret == JFileChooser.APPROVE_OPTION) {
	    	File[] myFiles = chooser.getSelectedFiles();
	    	myController.setSelectedFiles(myFiles);
	    }		
	}
	
	private JButton getAddFilesButton() {
		if(addFilesButton == null) {
			addFilesButton = new JButton();
			addFilesButton.setText("Bilder auswählen");
			addFilesButton.setFont(new java.awt.Font("Segoe UI",0,16));
			addFilesButton.setForeground(new java.awt.Color(255,255,255));
			addFilesButton.setBackground(new java.awt.Color(37,81,95));
			addFilesButton.setBorder(BorderFactory.createCompoundBorder(
					new LineBorder(new java.awt.Color(21,60,70), 1, true), 
					null));
			addFilesButton.setFont(new java.awt.Font("Segoe UI",1,12));
			addFilesButton.setFocusable(false);
			addFilesButton.setSize(235, 32);
			addFilesButton.addMouseListener(new MouseAdapter() {
	    		public void mousePressed(MouseEvent evt) {
	    			addFilesButtonMouseClicked(evt);
	    		}			
	    	});							
		}
		return addFilesButton;
	}
	
	public JPanel getImagesPanel()
	{
		return this.imageArea;
	}
	
	public GridLayout getImageAreaLayout()
	{
		return this.imageAreaLayout;
	}
	
	public JScrollPane getJScrollPane1() {
		if(jScrollPane1 == null) {
			jScrollPane1 = new JScrollPane();
			jScrollPane1.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
			jScrollPane1.setDoubleBuffered(true);
			{
				imageArea = new JPanel();				
				jScrollPane1.setViewportView(imageArea);
				//imageAreaLayout.setHgap(5);
				//imageAreaLayout.setVgap(5);
				imageArea.setLayout(imageAreaLayout);
				imageArea.setBackground(new java.awt.Color(43,89,105));
			}			
		}
		return jScrollPane1;
	}
}
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
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
B JScrollPane scrollt nicht immer automatisch 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
G Swing Höhe des View eines JScrollPane fest auf Höhe des JScrollPane setzen! AWT, Swing, JavaFX & SWT 4
A JScrollPane AWT, Swing, JavaFX & SWT 16
C Swing JScrollPane und Scroll-Geschwindigkeit AWT, Swing, JavaFX & SWT 8

Ähnliche Java Themen

Neue Themen


Oben