Java Swing JSlider
在我的游戏中,我正在制作一个基本的主菜单,我正在寻找一些东西Java Swing JSlider,java,swing,jslider,Java,Swing,Jslider,在我的游戏中,我正在制作一个基本的主菜单,我正在寻找一些东西 目前唯一能看到哪个Jslider的方法是将鼠标悬停在它上面。。有什么建议吗 当我更改JSlider亮度或JSlider音频时,它实际上不会更新,直到我切换选项卡并返回 当我关闭游戏并重新打开时,设置将返回默认设置。如何创建变量以保留设置 所有代码都在这里 如果您希望只看到代码参与的类 thx 我建议您在滑块旁边添加一个JLabel 您需要更新statechangelistener中的SetToolTiptText。无论何时状态更改,都
settings.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
remove(createWorld);
remove(addServer);
repaint();
// Get stored preferences and specific default values if they
// do not exist
final Preferences prefs = Preferences.userNodeForPackage(Render.class);
soundLevel = prefs.getInt("SOUND_LEVEL", 50);
lightLevel = prefs.getInt("LIGHT_LEVEL", 50);
// Add sound label
JLabel soundLabel = new JLabel("Sound: ");
soundLabel.setBounds(170, 110, 150, 35);
soundLabel.setForeground(Color.white);
add(soundLabel);
add(sound);
sound.setBounds(210, 110, 150, 35);
sound.setMinimum(0);
sound.setMaximum(100);
sound.setValueIsAdjusting(true);
sound.setValue(soundLevel);
sound.setToolTipText("Audio: " + soundLevel + "%");
sound.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) {
soundLevel = sound.getValue();
// Update tooltip value
sound.setToolTipText("Audio: " + soundLevel + "%");
// Save sound value in pref
prefs.putInt("SOUND_LEVEL", soundLevel);
}
});
// Add light label
JLabel lightLabel = new JLabel("Light: ");
lightLabel.setBounds(370, 110, 150, 35);
lightLabel.setForeground(Color.white);
add(lightLabel);
add(light);
light.setBounds(405, 110, 150, 35);
light.setMinimum(0);
light.setMaximum(100);
light.setValueIsAdjusting(true);
light.setValue(lightLevel);
light.setToolTipText("Brightness: " + lightLevel + "%");
light.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) {
lightLevel = light.getValue();
// Update tooltip value
light.setToolTipText("Brightness: " + lightLevel + "%");
// Save light value in pref
prefs.putInt("LIGHT_LEVEL", lightLevel);
}
});
}
});
欢迎来到StackOverflow这是一个问答网站,你的问题太模糊了,你必须详细解释你的问题:发生了什么,你想发生什么,并在这里显示相关代码,链接代码是不可取的。但最重要的是,你必须只张贴相关的代码,最好是一个。我们来这里不是为了修复或改进您的项目,这是您的工作,但如果您有具体问题,我们可能会帮助您解决。嗯。。。我有3个问题,我不是特别要求你帮我“修复”它。我发布了这个项目的链接,这样你就可以运行它,告诉我出了什么问题,然后我们就可以开始编辑过程了。是的,我知道我在哪里,我在这里发帖时暗示了什么。请记住im 14.1-添加JLabel或使用标题边框。2-您应该有一个ChangeListener来监视更改。3-关于SO,有许多问题应该会有所帮助,例如不要使用或建议使用setBounds、setSize或setLocation(或扩展为空布局)。没有理由在moderne GUI中使用这些。它们将工作负载增加了10倍,并立即降低了应用程序到服务器的可移植性0@MadProgrammer同意——我之所以使用它,是因为他以前的代码中有它,而且提供一个不同的解决方案,他可以即插即用,这将非常复杂更新了推荐的解决方案,并添加了关于setBounds、setSize和setLocation的说明。我该如何避免这些\n我只想说我已经学习java 1 1/2年了,这是我喜欢的东西learn@implementsFeatheredOrcian阅读有关布局管理器的教程。