Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java-访问组件信息_Java_Swing_User Interface - Fatal编程技术网

Java-访问组件信息

Java-访问组件信息,java,swing,user-interface,Java,Swing,User Interface,所以我有一节课: public class setting{ JLabel label; Component main; JButton set, reset; setting(String s, Component b){ this.label = new JLabel(s); this.main = b; this.set = new JButton("Set"); this.reset = n

所以我有一节课:

public class setting{
    JLabel label;
    Component main;
    JButton set, reset;

    setting(String s, Component b){
        this.label = new JLabel(s);
        this.main = b;
        this.set = new JButton("Set");
        this.reset = new JButton("Reset");
    }

    public void add(JPanel b) {
        b.add(this.label);
        b.add(this.main);
        b.add(this.set);
        b.add(this.reset);
    }
}
我如何才能访问此.main的信息?例如:

JSlider speed = new JSlider(0, 80); speed.setValue(0);
setting speedSett = new setting("speed", speed);
speedSett.main.getValue(); //This doesn't work
是否有任何方式可以访问设置类中的信息,我有这个设置?我希望这个类能够接受不同类型的组件,所以简单地将它设置为JSlider对我来说是不行的。
提前感谢您。

如果您知道它是JSlider,请使用它:

JSlider speed = new JSlider(0, 80); speed.setValue(0);
setting speedSett = new setting("speed", speed);
if (speeSett.getMain() instanceof JSlider) {
  JSlider slider = (JSlider) speedSett.getMain(); // Recommend to access from getter instead of direct access
  slider.getValue();
}

很高兴有帮助you@MGomeyy:您将希望接受此答案并投票表决。有关这方面的更多信息,请阅读帮助网站的本节:。