JSlider sichtbar

jalako

Mitglied
Hallo,
ich habe folgendes Problem:

In der Klasse "Menu" erstelle ich drei JSlider. Diese adde ich alle zu einem JPanel namens "bg5".
Wenn ich das Programm jedoch starte, ist nur der oberste sichtbar. Die beiden darunter werden erst sichtbar, wenn ich in ihre nähe klicke. Warum?

Hier der Code:
Java:
JSlider masterslider = new JSlider(JSlider.HORIZONTAL);
        masterslider.setBounds(285,200,500,100);
        masterslider.setBackground(Color.white);
        masterslider.setMinorTickSpacing(5);
        masterslider.setMajorTickSpacing(10);
        masterslider.setPaintTicks(true);
        masterslider.setPaintLabels(true);
        bg5.add(masterslider);
      
        JSlider effectslider = new JSlider(JSlider.HORIZONTAL);
        effectslider.setBounds(285,400,500,100);
        effectslider.setBackground(Color.white);
        effectslider.setMinorTickSpacing(5);
        effectslider.setMajorTickSpacing(10);
        effectslider.setPaintTicks(true);
        effectslider.setPaintLabels(true);
   bg5.add(effectslider);
      
        JSlider musicslider = new JSlider(JSlider.HORIZONTAL);
        musicslider.setBounds(285,600,500,100);
        musicslider.setBackground(Color.white);
        musicslider.setMinorTickSpacing(5);
        musicslider.setMajorTickSpacing(10);
        musicslider.setPaintTicks(true);
        musicslider.setPaintLabels(true);
        bg5.add(musicslider);


Danke im Vorraus!
 
Zuletzt bearbeitet von einem Moderator:

jalako

Mitglied
Na dann gl hf Klassen Name ist "Menu"

Java:
package pokemon;

import java.awt.Color;
import java.awt.Toolkit;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.io.File;
import java.util.Hashtable;

import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.WindowConstants;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;

import pokemon.casual.Music;
import pokemon.fight.Fight;
import pokemon.inventory.Inventory;

import javax.swing.JPanel;
import javax.swing.JSlider;

@SuppressWarnings("serial")
public class Menu extends JFrame  {

public JLabel start;
public JLabel load;
public JLabel settings;
public JLabel close;
public JLabel close2;
public JLabel close3;
public JPanel bg;
public JLabel bg2;
public JPanel bg3;
public JLabel bg4;
public JPanel bg5;
public JLabel bg6;
public JPanel inv1;
public JLabel inv2;
public JSlider slider;
public static JLabel gif;


public JLabel Savegame1;
FileHandler fh = new FileHandler();

public JLabel test;

@SuppressWarnings("unused")
public Menu() {
        Music.playIntro();
        super.setUndecorated(true);
        super.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        super.setSize(1080, 771);
        super.setLocationRelativeTo(null);
        super.setIconImage(Toolkit.getDefaultToolkit().getImage(getClass().getResource("/resource/pokemon-ico.png")));
        super.setResizable(false);
       
        JFrame settings2 = new JFrame("Pokemon Settings");
        JFrame savegames = new JFrame("Pokemon Savegames");
        File intro = new File("wurzelheim.WAV");
       
        bg = new JPanel();
        bg.setSize(1080, 771);
        bg.setVisible(true);
        bg.setLayout(null);
        super.add(bg);
       
        bg3 = new JPanel();
        bg3.setSize(1080, 771);
        bg3.setVisible(true);
        bg3.setLayout(null);
        savegames.add(bg3);
       
        bg5 = new JPanel();
        bg5.setSize(1080, 771);
        bg5.setVisible(true);
        bg5.setLayout(null);
        settings2.add(bg5);
       
        bg2 = new JLabel(new ImageIcon(getClass().getResource("/resource/menu.jpg")));
        bg2.doLayout();
        bg2.setBounds(0,0,1080,771);
        bg.add(bg2);
       
        bg4 = new JLabel(new ImageIcon(getClass().getResource("/resource/savegames.jpg")));
        bg4.doLayout();
        bg4.setBounds(0,0,1080,771);
        bg3.add(bg4);
       
        bg6 = new JLabel(new ImageIcon(getClass().getResource("/resource/settings.jpg")));
        bg6.doLayout();
        bg6.setBounds(0,0,1080,771);
        bg5.add(bg6);
       
        start = new JLabel();
        start.setIcon(new ImageIcon(getClass().getResource("/resource/search_default.png")));
        start.setBounds(460,350,200,100);
        start.addMouseListener(new MouseAdapter() {
                    boolean sgHover = false;
                    public void mouseEntered(MouseEvent evt) {
                        start.setIcon(new ImageIcon(getClass().getResource("/resource/search_hover.png")));
                        sgHover = true;
                    }
                    public void mouseExited(MouseEvent evt) {
                        start.setIcon(new ImageIcon(getClass().getResource("/resource/search_default.png")));
                        sgHover = false;
                    }
                    public void mousePressed(MouseEvent evt) {
                        start.setIcon(new ImageIcon(getClass().getResource("/resource/search_pressed.png")));
                      
                        Music.playStarteffect();
                        Music.playLilycove();
                        Music.stopIntro();
                        Gameframe();
                        Close();
                    }
                    public void mouseReleased(MouseEvent evt) {
                        if (sgHover == true) {
                            start.setIcon(new ImageIcon(getClass().getResource("/resource/search_hover.png")));
                            }
                    }
        });
        bg2.add(start);
       
        load = new JLabel();
        load.setIcon(new ImageIcon(getClass().getResource("/resource/load_default.png")));
        load.setBounds(460,450,200,100);
       
        int i = fh.getSpielzeit();
        Integer mI = new Integer(i);
        String Spielzeit = mI.toString();
        Savegame1 = new JLabel();
        Savegame1.setText("Spielzeit: " + Spielzeit + " Name: " + fh.getName());
        Savegame1.setBounds(460,250,400,100);
        Savegame1.setFont(Savegame1.getFont().deriveFont(18f));
        Savegame1.setVisible(false);
        load.addMouseListener(new MouseAdapter() {
                    boolean sgHover = false;
                    public void mouseEntered(MouseEvent evt) {
                        load.setIcon(new ImageIcon(getClass().getResource("/resource/load_hover.png")));
                        sgHover = true;
                    }
                    public void mouseExited(MouseEvent evt) {
                        load.setIcon(new ImageIcon(getClass().getResource("/resource/load_default.png")));
                        sgHover = false;
                    }
                    public void mousePressed(MouseEvent evt) {
                        load.setIcon(new ImageIcon(getClass().getResource("/resource/load_pressed.png")));
                      
                        Savegame1.setVisible(true);
                        savegames.setResizable(false);
                        savegames.setVisible(false);
                        savegames.setSize(1080,771);
                        savegames.setUndecorated(true);
                        savegames.setLocationRelativeTo(null);
                        savegames.setVisible(true);
                    }
                    public void mouseReleased(MouseEvent evt) {
                        if (sgHover == true) {
                            load.setIcon(new ImageIcon(getClass().getResource("/resource/load_hover.png")));
                            }
                    }
        });
        bg4.add(Savegame1);
        bg2.add(load);

        settings = new JLabel();
        settings.setIcon(new ImageIcon(getClass().getResource("/resource/settings_default.png")));
        settings.setBounds(460,550,200,100);
        settings.addMouseListener(new MouseAdapter() {
                    boolean sgHover = false;
                    public void mouseEntered(MouseEvent evt) {
                        settings.setIcon(new ImageIcon(getClass().getResource("/resource/settings_hover.png")));
                        sgHover = true;
                    }
                    public void mouseExited(MouseEvent evt) {
                        settings.setIcon(new ImageIcon(getClass().getResource("/resource/settings_default.png")));
                        sgHover = false;
                    }
                    public void mousePressed(MouseEvent evt) {
                        settings.setIcon(new ImageIcon(getClass().getResource("/resource/settings_pressed.png")));
                        settings2.setResizable(false);
                        settings2.setVisible(false);
                        settings2.setSize(1080,771);
                        settings2.setUndecorated(true);
                        settings2.setLocationRelativeTo(null);
                        settings2.setVisible(true);
                    }
                    public void mouseReleased(MouseEvent evt) {
                        if (sgHover == true) {
                            settings.setIcon(new ImageIcon(getClass().getResource("/resource/settings_hover.png")));
                            }
                    }
        });
        bg2.add(settings);
        close = new JLabel();
        close.setIcon(new ImageIcon(getClass().getResource("/resource/close_default.png")));
        close.setBounds(1030,-15,200,100);
        close.addMouseListener(new MouseAdapter() {
                    boolean sgHover = false;
                    public void mouseEntered(MouseEvent evt) {
                        close.setIcon(new ImageIcon(getClass().getResource("/resource/close_hover.png")));
                        sgHover = true;
                    }
                    public void mouseExited(MouseEvent evt) {
                        close.setIcon(new ImageIcon(getClass().getResource("/resource/close_default.png")));
                        sgHover = false;
                    }
                    public void mousePressed(MouseEvent evt) {
                        close.setIcon(new ImageIcon(getClass().getResource("/resource/close_pressed.png")));
                        Close();
                        System.exit(0);
                    }
                    public void mouseReleased(MouseEvent evt) {
                        if (sgHover == true) {
                            close.setIcon(new ImageIcon(getClass().getResource("/resource/close_hover.png")));
                            }
                    }
        });
        bg2.add(close);
        setVisible(true);

        close2 = new JLabel();
        close2.setIcon(new ImageIcon(getClass().getResource("/resource/close_default.png")));
        close2.setBounds(1030,-15,200,100);
        close2.addMouseListener(new MouseAdapter() {
                    boolean sgHover = false;
                    public void mouseEntered(MouseEvent evt) {
                        close2.setIcon(new ImageIcon(getClass().getResource("/resource/close_hover.png")));
                        sgHover = true;
                    }
                    public void mouseExited(MouseEvent evt) {
                        close2.setIcon(new ImageIcon(getClass().getResource("/resource/close_default.png")));
                        sgHover = false;
                    }
                    public void mousePressed(MouseEvent evt) {
                        close2.setIcon(new ImageIcon(getClass().getResource("/resource/close_pressed.png")));
                        savegames.dispose();
                    }
                    public void mouseReleased(MouseEvent evt) {
                        if (sgHover == true) {
                            close2.setIcon(new ImageIcon(getClass().getResource("/resource/close_hover.png")));
                            }
                    }
        });
        bg4.add(close2);
        close3 = new JLabel();
        close3.setIcon(new ImageIcon(getClass().getResource("/resource/close_default.png")));
        close3.setBounds(1030,-15,200,100);
        close3.addMouseListener(new MouseAdapter() {
                    boolean sgHover = false;
                    public void mouseEntered(MouseEvent evt) {
                        close3.setIcon(new ImageIcon(getClass().getResource("/resource/close_hover.png")));
                        sgHover = true;
                    }
                    public void mouseExited(MouseEvent evt) {
                        close3.setIcon(new ImageIcon(getClass().getResource("/resource/close_default.png")));
                        sgHover = false;
                    }
                    public void mousePressed(MouseEvent evt) {
                        close3.setIcon(new ImageIcon(getClass().getResource("/resource/close_pressed.png")));
                        settings2.dispose();
                    }
                    public void mouseReleased(MouseEvent evt) {
                        if (sgHover == true) {
                            close3.setIcon(new ImageIcon(getClass().getResource("/resource/close_hover.png")));
                            }
                    }
        });
        bg6.add(close3);
        JSlider masterslider = new JSlider(JSlider.HORIZONTAL);
        masterslider.setBounds(285,200,500,100);
        masterslider.setBackground(Color.white);
        masterslider.setMinorTickSpacing(5);
        masterslider.setMajorTickSpacing(10);
        masterslider.setPaintTicks(true);
        masterslider.setPaintLabels(true);
        masterslider.setVisible(true);
        masterslider.addChangeListener(new ChangeListener(){
            @Override
            public void stateChanged(ChangeEvent e) {
                JSlider source = (JSlider) e.getSource();
                System.out.println(source.getValue());
            }
          
        });
        bg5.add(masterslider);
        JSlider effectslider = new JSlider(JSlider.HORIZONTAL);
        effectslider.setBounds(285,400,500,100);
        effectslider.setBackground(Color.white);
        effectslider.setMinorTickSpacing(5);
        effectslider.setMajorTickSpacing(10);
        effectslider.setPaintTicks(true);
        effectslider.setPaintLabels(true);
        effectslider.setVisible(true);
        bg5.add(effectslider);
        JSlider musicslider = new JSlider(JSlider.HORIZONTAL);
        musicslider.setBounds(285,600,500,100);
        musicslider.setBackground(Color.white);
        musicslider.setMinorTickSpacing(5);
        musicslider.setMajorTickSpacing(10);
        musicslider.setPaintTicks(true);
        musicslider.setPaintLabels(true);
        musicslider.setVisible(true);
        bg5.add(musicslider);
    }

public void Close() {
    super.dispose();
    }

public void Gameframe(){
    gif = new JLabel(new ImageIcon(getClass().getResource("/resource/fightintro.gif")));
    gif.setBounds(0,0,1095, 771);
    gif.setVisible(false);
    Game game = new Game();
    JFrame frame = new JFrame("Pokemon");
    Inventory inven = new Inventory();
    frame.add(Inventory.inv2);
    frame.add(Inventory.arrow);
    frame.add(gif);
    frame.add(game);
    frame.pack();
    frame.setResizable(false);
    frame.setLocationRelativeTo(null);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 frame.setIconImage(Toolkit.getDefaultToolkit().getImage(getClass().getResource("/resource/pokemon-ico.png")));
    frame.setVisible(true);
    game.start();
    }
}
 
Zuletzt bearbeitet von einem Moderator:

Moritz_1234

Mitglied
Probier mal musicslider und effectslider über den masterslider zu schieben.
Es kann sein, dass wegen dem ChangeListener bei einem so komplexen Programm, ein Objekt irgendwie rumgebuggt wird. Also mach einfach mal alles über masterslider zu schieben, sodass der ChangeListener unten ist.
Ich such mal weiter, es kann sein dass irgendwie da was verdeckt wird. Schreib dann, ob die Änderung funktioniert.


//EDIT funktioniert nicht. Ich guck mal weiter
 

Moritz_1234

Mitglied
Hab die Lösung!!!
Der masterslider ist so groß, dass er die anderen beiden verdeckt.
Nimm das
Code:
masterslider.setBounds(10, 231, 861, 223);
oder ähnliches für den masterslider und gebe bg5 die Farbe weiß.
:)
 

jalako

Mitglied
Der masterslider ist doch genau so groß, wie die anderen, oder?o_O Wenn ich den masterslider kleiner mache, ist das gleiche Problem.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
E Frage zum Schieberegler JSlider AWT, Swing, JavaFX & SWT 5
T Java: Zwei abhängige JSlider machen nicht das, was sie sollen AWT, Swing, JavaFX & SWT 4
D Swing JSlider Tip Anzahl AWT, Swing, JavaFX & SWT 3
J Swing JSlider - Form des Reglers AWT, Swing, JavaFX & SWT 6
J JSlider Color Ticks AWT, Swing, JavaFX & SWT 1
J JSlider - MajorTick AWT, Swing, JavaFX & SWT 0
Z JSlider im Modalen-Fenster AWT, Swing, JavaFX & SWT 0
A Swing JLabel/JTextField Inhalt mit JSlider verändern AWT, Swing, JavaFX & SWT 12
A Swing 2 JSlider verknüpfen und mit einem JTextField vergleichen, dann Ausgabe AWT, Swing, JavaFX & SWT 5
A Slider (JSlider?) AWT, Swing, JavaFX & SWT 7
D JSlider "laggt" nach überschreiben der paint methode AWT, Swing, JavaFX & SWT 2
A Swing JSlider erscheint doppelt AWT, Swing, JavaFX & SWT 2
K 2D-Grafik Kontrastanpassung über einen JSlider AWT, Swing, JavaFX & SWT 2
A Swing Bestimmte Werte anzeigen JSlider() AWT, Swing, JavaFX & SWT 2
Y Mehrere JSlider verlinken AWT, Swing, JavaFX & SWT 6
M JSlider-Wert ändern, ohne ein ChangeEvent auszulösen AWT, Swing, JavaFX & SWT 4
C Aussehen von JSlider ändern AWT, Swing, JavaFX & SWT 7
D Swing jSlider soll selber weiterwandern, je nach zeit der musik AWT, Swing, JavaFX & SWT 5
D JSlider und Textfeld AWT, Swing, JavaFX & SWT 2
C Swing Tickspacing in JSlider AWT, Swing, JavaFX & SWT 3
C Swing Mehrere JSlider sollen aufeinander reagieren AWT, Swing, JavaFX & SWT 4
Y JSlider Wert auslesen (Kategorien) AWT, Swing, JavaFX & SWT 2
T jSlider-Value als Float in jLabel ausgeben AWT, Swing, JavaFX & SWT 2
O Swing JSlider mit doppelter Value AWT, Swing, JavaFX & SWT 6
F JSlider Design ändern AWT, Swing, JavaFX & SWT 6
D Swing JSlider AWT, Swing, JavaFX & SWT 11
B JSlider - Wert am Mouszeiger anzeigen lassen AWT, Swing, JavaFX & SWT 6
E JSlider synchron halten AWT, Swing, JavaFX & SWT 4
J Swing jSlider nur auf bestimmte werte beschränken AWT, Swing, JavaFX & SWT 15
X Audio Player: Fenster mit Play/Stop-Button erstellen, mit JSlider Lautstärke ändern AWT, Swing, JavaFX & SWT 6
R JSlider AWT, Swing, JavaFX & SWT 9
M Swing JSlider, Popup-Box AWT, Swing, JavaFX & SWT 3
J JSlider mit Double Werten AWT, Swing, JavaFX & SWT 5
J JSlider auf JTextPane? AWT, Swing, JavaFX & SWT 2
M Jslider Beschriftung AWT, Swing, JavaFX & SWT 6
R JLabel und JSlider dynamisch erzeugen? AWT, Swing, JavaFX & SWT 3
E jSlider und ChangeListener AWT, Swing, JavaFX & SWT 2
S JSlider Track Breite und Farbe AWT, Swing, JavaFX & SWT 2
T Swing JSlider und Adjustment-Listener wollen nicht so recht AWT, Swing, JavaFX & SWT 2
O JSlider - wie unterscheide ich mit Maus verändert und durch setValue verändert. AWT, Swing, JavaFX & SWT 16
T JSlider: ChangeListener löst dreimal aus? AWT, Swing, JavaFX & SWT 4
B JSlider in JCombobox AWT, Swing, JavaFX & SWT 9
J JSlider wird nicht neugezeichnet AWT, Swing, JavaFX & SWT 8
J Einen JSlider ähnlich wie in OO3 AWT, Swing, JavaFX & SWT 5
G JSlider in Applet AWT, Swing, JavaFX & SWT 4
K Unterschiedliches Aussehen der JSlider? AWT, Swing, JavaFX & SWT 4
I Listener für einen JSlider AWT, Swing, JavaFX & SWT 1
G beschriftung von JSlider AWT, Swing, JavaFX & SWT 7
H JSlider mit 2 Werten AWT, Swing, JavaFX & SWT 7
L JSlider Beschriftung AWT, Swing, JavaFX & SWT 1
A JSlider umdrehen AWT, Swing, JavaFX & SWT 15
D JSlider und JMF player verbinden AWT, Swing, JavaFX & SWT 6
J JSlider regaiert unter Java 1.6 nicht mehr AWT, Swing, JavaFX & SWT 7
N JSlider: Kosmetik - snapToTicks AWT, Swing, JavaFX & SWT 3
T JComponents abändern/modifizieren z.b. JSlider AWT, Swing, JavaFX & SWT 2
N Nicht linearer JSlider! AWT, Swing, JavaFX & SWT 4
T JSlider getValue() erst nach dem Loslassen des Mauszeigers AWT, Swing, JavaFX & SWT 3
Z JSlider-Knob wenden AWT, Swing, JavaFX & SWT 8
L JSlider stumm geworden? AWT, Swing, JavaFX & SWT 2
I JSlider - klick ignorieren AWT, Swing, JavaFX & SWT 4
I JSlider-Schieberegler AWT, Swing, JavaFX & SWT 7
T JSlider Schiebereglerbild ändern AWT, Swing, JavaFX & SWT 4
U JSlider - Probleme bei der Darstellung AWT, Swing, JavaFX & SWT 3
H ChangeListener für JSlider AWT, Swing, JavaFX & SWT 6
P JSlider automatisch bewegen AWT, Swing, JavaFX & SWT 3
G JSlider AWT, Swing, JavaFX & SWT 2
H Swing Buttons erst nach Klick sichtbar AWT, Swing, JavaFX & SWT 13
D Swing Komponenten nicht sichtbar nach Start AWT, Swing, JavaFX & SWT 12
P JavaFX Änderungen am Datenmodell visuell nicht sichtbar AWT, Swing, JavaFX & SWT 3
R Swing Panel nur bei Maus sichtbar AWT, Swing, JavaFX & SWT 2
P Lable sichtbar/unsichtbar toggeln AWT, Swing, JavaFX & SWT 2
L Swing Komponenten erst nach Resize sichtbar AWT, Swing, JavaFX & SWT 2
J Textfeld nicht sichtbar AWT, Swing, JavaFX & SWT 2
T JButton wird beim vergrößern des Fensters erst sichtbar AWT, Swing, JavaFX & SWT 4
Joker4632 JButton nicht sichtbar, aber funktionsfähig AWT, Swing, JavaFX & SWT 8
L Swing JTextField nicht sichtbar AWT, Swing, JavaFX & SWT 1
K JButton nicht sichtbar machen für User 2 AWT, Swing, JavaFX & SWT 4
U Swing Inhalt vom Fenster wird erst durch Hovern oder Klicken sichtbar AWT, Swing, JavaFX & SWT 3
T JButton überlagern sich und werden erst beim Mausscrollen sichtbar AWT, Swing, JavaFX & SWT 2
A JavaFX DatePicker in Swing beim Start nicht sichtbar AWT, Swing, JavaFX & SWT 2
M SWT View nicht mehr sichtbar AWT, Swing, JavaFX & SWT 2
P Swing Panel nicht sichtbar AWT, Swing, JavaFX & SWT 1
X JFrame erst nach dem Laden sichtbar stellen AWT, Swing, JavaFX & SWT 8
D JList&JButton erst nach Resize des JFRame sichtbar AWT, Swing, JavaFX & SWT 2
A Swing " comboboxes vergl. wenn aus der 1. etwas gewählt wurde ist, es in der 2. nicht mehr sichtbar AWT, Swing, JavaFX & SWT 9
R Komponenten werden erst nach maximierung des Frames sichtbar (Linux) AWT, Swing, JavaFX & SWT 5
S Canvas durch transparentes JPanel sichtbar machen AWT, Swing, JavaFX & SWT 2
D Image soll langsam sichtbar werden AWT, Swing, JavaFX & SWT 4
P jframe setVisible(false) wieder sichtbar machen? AWT, Swing, JavaFX & SWT 4
B LookAndFeel GWT: Canvas in TabSet nicht sichtbar AWT, Swing, JavaFX & SWT 2
S Swing JLabel wird in JPanel nicht sichtbar AWT, Swing, JavaFX & SWT 2
A jformattedtextfield unsichtbar und wieder sichtbar machen AWT, Swing, JavaFX & SWT 13
Wirago Swing neues Fenster nicht sichtbar AWT, Swing, JavaFX & SWT 6
T 2D-Grafik gezeichnetes Bild verschieben - rand bleibt sichtbar AWT, Swing, JavaFX & SWT 2
C SWT CTabItem wieder sichtbar machen AWT, Swing, JavaFX & SWT 3
H Verschiedene JPanels aus eigenen Klassen in JFrame einfügen, nur ein Panel sichtbar AWT, Swing, JavaFX & SWT 4
S Anfänger - JFrame/JLabel nicht sichtbar AWT, Swing, JavaFX & SWT 5
O Swing JButton werden richtig gewechselt aber die Maus macht die alten wieder Sichtbar?? AWT, Swing, JavaFX & SWT 5
S ButtonCelleditor explizit sichtbar machen AWT, Swing, JavaFX & SWT 6
D Swing update eines Labels nicht sichtbar AWT, Swing, JavaFX & SWT 9

Ähnliche Java Themen

Neue Themen


Oben