Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

Jappletについて

JAppletで、内部クラスを使わずにプログラムを作るにはどうしたらよいでしょうか??

6

回答

8131

閲覧

6件の回答

評価

0

どんなプログラムですか?

評価

0

public class Sample extends JApplet
{
 private JLabel lb;
 private JButton bt;

 public void init()
 {
  Container cnt = getContentPane();
     lb = new JLabel("123");
     bt = new JButton("456");
    
  cnt.add(lb, BorderLayout.CENTER);
  cnt.add(bt, BorderLayout.SOUTH);
  
bt.addActionListener(new SampleActionListener());
 }

 class SampleActionListener implements ActionListener
 {
  public void actionPerformed(ActionEvent e)
  {
    lb.setText("");
    bt.setText("");
  addMouseListener(new SampleMouseListener());
  }
}

 class SampleMouseListener extends MouseAdapter
 {
  public void mousePressed(MouseEvent e)
  {
    lb.setText("ありがとう");
    bt.setText("戻る");
  }
 }
}

評価

0

ActionListenerやMouseListenerを
Sampleクラスが直接実装(implements)すれば
内部クラスを使用せずに書くことができます。

評価

0

implementsではなくコンストラクタを使った場合はどうしたらいいですか??

評価

0

コンストラクタ?
SampleActionListenerやSampleActionListenerを
使うということでしょうか。
その場合、それらにSampleクラス自身を
引数で渡してあげることになると思います。

評価

0

上記は省略
addMouseListener(new SampleMouseListener(5));
  }
}

SampleMouseListener(int n)
{
  public void mousePressed(MouseEvent e)
  {
    lb.setText("ありがとう");
    bt.setText("戻る");
  }
 }
}

という感じですかね・・・。

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。