想做一个窗口上面有个面板,面板上有个按钮。分别建立了窗口、面板、按钮三个自定义类。
主程序实例化一个窗口,自然就产生了面板和按钮。
问题:
窗口、面板、按钮之间的关系是什么?应该不是父类与子类的关系了。
如果在按钮类中监听按钮动作,如何执行分别属于窗口和面板的方法?

解决方案 »

  1.   

    按钮类.getParent()应该就是面板类,面板类.getParent()应该就是窗口类了吧!
    如果以上成立的话就可以分别调用面板类和窗口类的方法了!
      

  2.   

    经测试要在按钮的类中要用this.getParent().getParent().getParent().getParent()才能得到主窗口对象。为什么?有没有简单的办法?
      

  3.   

    查了一下,用this.getRootPane().getParent()可直接得到顶级容器的句柄。