解决方案 »

  1.   

    有点诡异啊。public void windowClosing(WindowEvent e) {
            // TODO Auto-generated method stub
            this.dispose();
            Mylog.canclick = 1;
            Recv.isal1open=false;
    }这里面“this.dispose();”,你把窗口都销毁了,后面整个窗口还怎么处理事件啊?
      

  2.   

        谢谢ldh911CSDN扛把子的点拨!!
        现在弟我最新遇到的问题是:
        为什么我在进行了您写出的代码的修改:
            其中的“Recv类”是一个“在我的用户的C端”“一直运行的类型”,弟我定义了一个全局int型变量:“isal1open”,进行弟我的上述传入ChatClientFriendlist类的构造方法的MyLog实例的代替.
        但是,现在我遇到的新的问题是:
        无法打开好友列表中的“某一个分组”,就是上文中的代码:
        else if(log.canclick==1){
                 obj1 = new ChineseTeacher();
                 obj2 = new EnglishTeacher();
                 obj3 = new Psychological_gas_station();
                 obj4 = new Math_Teacher();
                 obj5 = new Physical_Teacher();
                 obj6 = new Advertisement();
                 Mylog.canclick = 2;
             }
        所创建的窗口,但是,现在点击它们,无法得到我的“上述ChineseTeacher类”“EnglishTeacher类”以及“Psychological_gas_station类”乃至之后的“Math_Teacher”与“Physical_Teacher”类的窗口打开的代码实施效果,(这几个类型的构造方法,都是能够打开对应的类型的窗口的),我在他们的构造方法体中,进行过下述代码第2行的处理的:
        public ChineseTeacher(){
    this.setVisible(false);
    this.setTitle("请选择您的语文家庭教师");
    ////System.out.println("C端系统赋值前btnbox的值"+btnbox);
    for(int i = 0;i<43;i++){
    MyJButton000 btns = new MyJButton000(Recv.MyJButton0content[i],Recv.MyJButton0URL[i],Recv.MyJButton0Doctor_ficia[i],Recv.MyJButton0SystempriKey[i],Recv.Doctoronline[i],Recv.MyJButton0complicatingnum[i]);
    btnbox.add(btns);
    }
    System.out.println("C端系统中ChineseTeacher类btnbox添加MyJButton000元素后的长度"+btnbox.size());
    jp.setLayout(new GridLayout(14,0));
    ////System.out.println("YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY");
    jb882 =  new FriendArrayfresh(btnbox,this);//在这里传给了jb882这个“刷新我的好友按钮的粉刷工”.
    for(int i =0;i<43;i++){
    jp.add(btnbox.get(i));
    }
    this.add(jp);
    for(int i =0;i<43;i++){
    btnbox.get(i).setFont(fnt);
    }
    setBounds(200,110,1008,568);
    }
        我进行好友列表的点击的动作响应的代码如下:
        
        但是,现在我点击了上述的好友列表的窗口后,得到的结果如下:
        
        希望ldh911扛把子,CSDN中的高手,版主,大中华区的广大开发者同仁,能够相助!!
      

  3.   

    CSDN中的诸位高手,ldh911大哥,请问:
        现在我已经将上文中的“关闭窗口”的事件相应代码:
        @Override
    public void windowClosing(WindowEvent e) {
    // TODO Auto-generated method stub
    Recv.isal1open = 1;
    new ChatClientFriendlist(Mylog);
    this.dispose();
    }
        修改成了下面的结构:
        @Override
    public void windowClosing(WindowEvent e) {
    // TODO Auto-generated method stub
    Recv.isal1open = 1;
    System.out.println("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"+Recv.isal1open);

    this.dispose();
    }    弟我现在点击“ChatClientFriendlist类的关闭按钮”,没有得到打印上文中的含有一串大写字母A的“Recv.isal1open”的变量的具体的值.
        这证明:
        我的代码,可能没有执行我的“Recv.isal1open = 1;”的赋值语句.
        希望得到CSDN中的高手的点拨:
        我的问题,出在什么地方?
        怎样修改?
      

  4.   


    快速扫了一遍你的代码,你并没有注册 this.addWindowListener(this) 事件监听处理啊?
      

  5.   


    快速扫了一遍你的代码,你并没有注册 this.addWindowListener(this) 事件监听处理啊?
    ldh911一直都是那么给力