import java.awt.*;
import java.awt.event.*;
class Test implements ActionListener{
Button btn1;
Button btn2;
Button btn3;
Button btn4;
Button btn5;
Button btn6;
Button btnClose;
Button btnErase;
Label label;
public Test(){
// フレームを作成します。
Frame frm = new Frame("18-15");
/* レイアウトを設定します。*/
frm.setLayout(new GridLayout(3, 1));
/* フレームのサイズを設定します。*/
frm.setSize(new Dimension(400,400));
/* 3つのパネルを作成します。*/
Panel pnl1 = new Panel(new GridLayout(3, 2));
Panel pnl2 = new Panel(new GridLayout(2, 1));
Panel pnl3 = new Panel(new GridLayout());
/* ボタンを作成します。*/
btn1 = new Button("倖田久美");
btn2 = new Button("大塚藍");
btn3 = new Button("DoA");
btn4 = new Button("PONNIE PINK");
btn5 = new Button("浜埼あゆみ");
btn6 = new Button("平原彩花");
/* リスナーに登録します。*/
/* インナークラスを使用しています。*/
Panel1ButtonListener p1bl = new Panel1ButtonListener();
btn1.addActionListener(p1bl);
btn2.addActionListener(p1bl);
btn3.addActionListener(p1bl);
btn4.addActionListener(p1bl);
btn5.addActionListener(p1bl);
btn6.addActionListener(p1bl);
/* ボタンをパネル1に登録します。*/
pnl1.add(btn1);
pnl1.add(btn2);
pnl1.add(btn3);
pnl1.add(btn4);
pnl1.add(btn5);
pnl1.add(btn6);
/* クローズ、消去ボタンを作成します。*/
btnClose = new Button("Close");
btnErase = new Button("Erase");
/* リスナーを登録します。thisのactionPerformedが呼ばれます。*/
btnClose.addActionListener(this);
btnErase.addActionListener(this);
pnl2.add(btnClose);
pnl2.add(btnErase);
/* ラベルを作成します。*/
label = new Label("", Label.CENTER);
pnl3.add(label);
/* 3つのパネルをフレームに登録します。*/
frm.add(pnl1);
frm.add(pnl2);
frm.add(pnl3);
/* フレームを表示させます。*/
frm.setVisible(true);
}
/* クローズボタン、消去ボタンが押されるとここが呼ばれます。*/
public void actionPerformed(ActionEvent e){
/* しなくても良いですが、キャストできることを確認する。*/
if( e.getSource() instanceof Button ){
Button b = (Button)e.getSource();
/* 各処理をします。*/
if( b == btnErase )
label.setText("");
else if( b == btnClose )
System.exit(0);
}
}
public static void main(String args[]){
new Test();
}
/* インナークラスです。*/
/* btn1〜btn6が押されたらここが呼ばれます。*/
class Panel1ButtonListener implements ActionListener{
public void actionPerformed(ActionEvent e){
if( e.getSource() instanceof Button )
label.setText(((Button)e.getSource()).getLabel());
}
}
}
|