在两个类,A类和B类。
在A类中声明了一个方法为getLevel(),在B类中调用时获得不了想要的正确的结果。
部分代码:
A类中的getLevel()方法:
public int getLevel(){
level=xxxJComboBox.getSelectedIndex()+1;
return level;
}
在B类中的调用:
public synchronized void xxx(int xx){
myCtr=new MyBlockJFrame(); // 初始化A类对象,前已声明
......
// System.out.println(myCtr.getLevel());
switch(myCtr.getLevel()){
case 4:
case 5:......;break;
case 6:......;break;
default:......;
}
...... 大体结构就是这样了。在执行System.out.println(myCtr.getLevel());语句输出时窗口显示为1,但在A类中改变了Level值后,在B类中得到的myCtr.getLevel());值仍为1。既总执行default语句。
我在A类中也声明了B类的对象,听别人说这样做不好,但我看一些例子的时候也有这样互相调用的,所以不知道是不是这里的问题。
我写得比较乱,不知道名位看明白没有,有什么问题可以跟贴,我会补充。本人为初学者,望大家帮助。
当用户点击该控件后,用getSelectedIndex()方法获得所选择的级别。
然后把它的值赋给Level。我说得不太清楚,不知道大家看明白没有。
有问题的话请跟贴,谢谢!