ButtonControl.java
import java.awt.*;
import java.awt.event.*;
import java.applet.Applet;
/** 表示のコントロールを受ける ShowControled クラス */
class ShowControled extends Button implements ItemListener {
/** コンストラクタ */
ShowControled( String label ) {
super(label);
}
/** 独自のアクションの処理 */
public void itemStateChanged( ItemEvent evt ) {
show( evt.getStateChange() == ItemEvent.DESELECTED );
}
}
/** 状態のコントロールを受ける EnableControled クラス */
class EnableControled extends Checkbox implements ItemListener {
/** コンストラクタ */
EnableControled( String label ) {
super(label);
}
/** 独自のアクション処理 */
public void itemStateChanged( ItemEvent evt ) {
enable( evt.getStateChange() == ItemEvent.DESELECTED );
}
}
/** アクションの処理をテストするアプレット ButtonControl クラス */
public class ButtonControl extends Applet {
/** インターフェイスの部品の宣言 */
public Checkbox check;
public ShowControled showControled;
public EnableControled enableControled;
/** 初期設定のメソッド */
public void init() {
showControled
= new ShowControled( "I am Controled by Anyone." );
enableControled = new EnableControled( "Show/Hide" );
check = new Checkbox( "Enable/Disable" );
add( check );
add( enableControled );
add( showControled );
check.addItemListener( enableControled );
enableControled.addItemListener( showControled );
}
}