所以我有这个课:
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);
}
}
我将如何访问this.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();
}