java componentlistener_ComponentListener接口

全屏

ComponentEvent类必须实现这个接口。类的对象组件注册。使用addComponentListener()方法,该对象可以被注册。组件事件提出仅供参考。

接口声明

以下是声明的java.awt.event.ComponentListener接口:public interface ComponentListener

extends EventListener

接口中的方法S.N.方法&说明

1void componentHidden(ComponentEvent e)Invoked when the component has been made invisible.

2void componentMoved(ComponentEvent e)Invoked when the component's position changes.

3void componentResized(ComponentEvent e)Invoked when the component's size changes.

4void componentShown(ComponentEvent e)Invoked when the component has been made visible.

继承的方法

这个接口继承的方法从下面的接口:java.awt.EventListener

ComponentListener示例

选择使用任何编辑器创建以下java程序 D:/ > AWT > com > sxt > gui >

AwtListenerDemopackage cn.sxt.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.showComponentListenerDemo();

}

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 showComponentListenerDemo(){

headerLabel.setText("Listener in action: ComponentListener");

ScrollPane panel = new ScrollPane();

panel.setBackground(Color.magenta);

Label msglabel = new Label();

msglabel.setAlignment(Label.CENTER);

msglabel.setText("Welcome to TutorialsPoint AWT Tutorial.");

panel.add(msglabel);

msglabel.addComponentListener(new CustomComponentListener());

controlPanel.add(panel);

mainFrame.setVisible(true);

}

class CustomComponentListener implements ComponentListener {

public void componentResized(ComponentEvent e) {

statusLabel.setText(statusLabel.getText()

+ e.getComponent().getClass().getSimpleName() + " resized. ");

}

public void componentMoved(ComponentEvent e) {

statusLabel.setText(statusLabel.getText()

+ e.getComponent().getClass().getSimpleName() + " moved. ");

}

public void componentShown(ComponentEvent e) {

statusLabel.setText(statusLabel.getText()

+ e.getComponent().getClass().getSimpleName() + " shown. ");

}

public void componentHidden(ComponentEvent e) {

statusLabel.setText(statusLabel.getText()

+ e.getComponent().getClass().getSimpleName() + " hidden. ");

}

}}

编译程序,使用命令提示符。到 D:/ > AWT然后键入以下命令。D:AWT>javac cnsxtguiAwtListenerDemo.java

如果没有错误出现,这意味着编译成功。使用下面的命令来运行程序。D:AWT>java cn.sxt.gui.AwtListenerDemo

验证下面的输出

59c8ff59bd2950ec519f5450ab695c86.png

分享到:

0评论

14487a65ea137d8f9ac97cdce44a0324.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值