Awt-container-listener
提供:Dev Guides
AWT ContainerListenerインターフェイス
前書き
interface * ContainerListener *は、コンテナイベントの受信に使用されます。 コンテナイベントを処理するクラスは、このインターフェイスを実装する必要があります。
クラス宣言
以下は java.awt.event.ContainerListener インターフェースの宣言です。
public interface ContainerListener
extends EventListener
インターフェースメソッド
S.N. | Method & Description |
---|---|
1 |
void componentAdded(ContainerEvent e) コンポーネントがコンテナに追加されたときに呼び出されます。 |
2 |
void componentRemoved(ContainerEvent e) コンポーネントがコンテナから削除されたときに呼び出されます。 |
継承されたメソッド
このクラスは、次のインターフェイスからメソッドを継承します。
- java.awt.event.EventListener
ContainerListenerの例
たとえば、 D:/> AWT> com> finddevguides> gui> の任意のエディターを使用して、次のJavaプログラムを作成します。
AwtListenerDemo.java
package com.finddevguides.gui;
import java.awt.*;
import java.awt.event.*;
public class AwtListenerDemo {
private Frame mainFrame;
private Label headerLabel;
private Label statusLabel;
private Panel controlPanel;
public AwtListenerDemo(){
prepareGUI();
}
public static void main(String[] args){
AwtListenerDemo awtListenerDemo = new AwtListenerDemo();
awtListenerDemo.showContainerListenerDemo();
}
private void prepareGUI(){
mainFrame = new Frame("Java AWT Examples");
mainFrame.setSize(400,400);
mainFrame.setLayout(new GridLayout(3, 1));
mainFrame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent windowEvent){
System.exit(0);
}
});
headerLabel = new Label();
headerLabel.setAlignment(Label.CENTER);
statusLabel = new Label();
statusLabel.setAlignment(Label.CENTER);
statusLabel.setSize(350,100);
controlPanel = new Panel();
controlPanel.setLayout(new FlowLayout());
mainFrame.add(headerLabel);
mainFrame.add(controlPanel);
mainFrame.add(statusLabel);
mainFrame.setVisible(true);
}
private void showContainerListenerDemo(){
headerLabel.setText("Listener in action: ContainerListener");
ScrollPane panel = new ScrollPane();
panel.setBackground(Color.magenta);
panel.addContainerListener(new CustomContainerListener());
Label msglabel = new Label();
msglabel.setAlignment(Label.CENTER);
msglabel.setText("Welcome to finddevguides AWT Tutorial.");
panel.add(msglabel);
controlPanel.add(panel);
mainFrame.setVisible(true);
}
class CustomContainerListener implements ContainerListener {
public void componentAdded(ContainerEvent e) {
statusLabel.setText(statusLabel.getText()
+ e.getComponent().getClass().getSimpleName() + " added. ");
}
public void componentRemoved(ContainerEvent e) {
statusLabel.setText(statusLabel.getText()
+ e.getComponent().getClass().getSimpleName() + " removed. ");
}
}
}
コマンドプロンプトを使用してプログラムをコンパイルします。 D:/> AWT に移動し、次のコマンドを入力します。
D:\AWT>javac com\finddevguides\gui\AwtListenerDemo.java
エラーが発生しない場合は、コンパイルが成功したことを意味します。 次のコマンドを使用してプログラムを実行します。
D:\AWT>java com.finddevguides.gui.AwtListenerDemo
次の出力を確認します