1. never to block an EDT by Thread.sleep(showImage * 1000); //must double the number mili second, in Java7 and never verson nothing will be repainted in the screen, use Swing Timer exclusivelly, - more in Oracle tutorial Concurency in Swing
2. use ItemListener for JCheckBox //What do I need to change or add here? - more in Oracle tutorial
3. use CardLayout instead of private void bilderSchau() {
4. whats reason(s) for, because paiunting is done in paintComponent by invoking JPanel.repaint(after image is loaded)
//Get the graphic context
Graphics grafikKontext = this.getGraphics();
//Clear the display
grafikKontext.clearRect(0, 0, this.getSize().width, this.getSize().height);
//The method drawImage to show the new output scaled image
grafikKontext.drawImage(bild, 0, 0, (int) neueBildBreite, (int) neueBildHoehe, this);
5. override getPreferredSize for public class BildPanel extends JPanel{, then g.drawImage(bild, 0, 0, (int) neueBildBreite, (int) neueBildHoehe, this); will be getHeight/Weight instead of hunting for (int) neueBildBreite, (int) neueBildHoehe
___________________________________________________
6. create an JFrame and JDialog(modal true, only one JDialog, reuse for another image by setVisible(true/flase)) for showing an Image with JLabel inside JScrollPane, don't forget to call flush() before ImageIcon/Icon is added to JLabel.setIcon(), - more in Oracle tutorials How to use Labels and Icon