>>894
正直いってソースがいまいち理解できないけど、でも、JPanel1の中にJPanel2を
もっているのは、なぜなの。
パネルが表示されるためには、フレームなどにaddされないとだめだけど、JPanel1
をaddしたからって、そのフィールドであるJPanel2が見えるわけじゃないよ。
意図していることを実行するには、まず、Jpanel1の中にはJPanel2の参照だけを
持つようにする。つまり、JPanel1のコンストラクタに、JPanel2をパラメータとして
渡して、JPanel2にアクセスできるようにする。JPanel2は変えなくていい。
public class JPanel1 extends JPanel{
JPanel2 JP2 ;
JButton JB1 = new JButton("1") ;

public JPanel1(JPanel2 JP2){
this.JP2 = JP2;
JB1.addActionListener(new JB1Listener() ) ;
add(JB1) ;
}
以下略。
で、まずJPanel2のインスタンスjp2Objを作ってフレームにaddする。
次に、JPanel1のインスタンスをjp2Objを渡して作る。
new JPanel1(jp2Obj) これをフレームにaddする。
ま、そんな感じ。