所以我试图从名为Calculator的类中访问JComboBox。 JComboBox本身位于一个方法中,而在另一个名为GUI的类中的JPanel中。 感谢。
这是我的代码
public class GUI {
public static JFrame MainFrame(){
//the endless code
frame.add(konvpanel();
return frame;
}
public static JPanel konvpanel(){
JPanel a = new JPanel();
String [] itembox = {"...","XXX","===","|||"};
JComboBox nnn = new JComboBox(itembox);
a.add(nnn);
return a;
}
}
提前感谢。
答案 0 :(得分:2)
您无法访问nnn
,因为该方法范围之外的引用不存在。
所以你有两个选择:
我选择第一选。
另一个选项,取决于为什么,您需要访问组合框,可能是为组合框添加一个侦听器,并将Calculator
实例的引用添加到该侦听器好。然后,无论何时触发您注册的事件,您都会将该信息传递给计算器。
答案 1 :(得分:0)
如果您要访问JComboBox
,请按以下方式声明。
public class GUI {
public static JComboBox nnn;
public static JPanel konvpanel(){
JPanel a = new JPanel();
String [] itembox = {"...","XXX","===","|||"};
nnn = new JComboBox(itembox); /*refer the previously declared variable*/
a.add(nnn);
return a;
}
}