| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1642 人关注过本帖
标题:[求助]怎样使用WindowListener
只看楼主 加入收藏
guo001
Rank: 1
等 级:新手上路
帖 子:82
专家分:0
注 册:2006-3-19
收藏
 问题点数:0 回复次数:8 
[求助]怎样使用WindowListener

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Shijian extends JFrame
{
JButton bt1,bt2;
JPanel pl;
JLabel lblevent;

public Shijian()
{
super("Window Title");//实现父类的构造方法
pl=new JPanel();
bt1=new JButton("Button1");
bt2=new JButton("Button2");
lblevent=new JLabel("");
this.getContentPane().add(pl);
pl.add(bt1);
pl.add(bt2);
pl.add(lblevent);
listen blisten=new listen();//创建事件监听对象
bt1.addComponentListener(blisten);//为控件注册监听对象
bt2.addComponentListener(blisten);

this.setSize(200,200);
this.setVisible(true);
}
class listen implements WindowListener//自定义事件监听类以实现动作监听接口(该类为类中类)
{
public void windowClosed(WindowEvent evt)//重写ActionEvent事件处理方法
{
Object obj1=evt.getSource();//捕获事件源对象
if(obj1==bt1)
{
lblevent.setText("Button1 Clicked");//重新设置事件源对象的文本内容
}
}
public void windowOpened(WindowEvent evt)
{
}
public void windowClosing(WindowEvent evt)
{
}
public void windowActivated(WindowEvent evt)
{
}
public void windowDeactivated(WindowEvent evt)
{
Object obj2=evt.getSource();
if(obj2==bt2)
{
lblevent.setText("Button2 Clicked ");
}
}
public void windowIconified(WindowEvent evt)
{
}
public void windowDeiconified(WindowEvent evt)
{
}
}
public static void main(String args[])
{
Shijian f=new Shijian();
}
}
应该怎么用啊! 我写的有错

搜索更多相关主题的帖子: import add awt new 
2006-03-27 21:03
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 

像你这个程序怎么会想到用windowListener呢,你不是按钮事件吗?
实现actionListener不就可以了吗?
windowListener是对窗口事件处理的啊
事件处理一定要搞清楚是处理什么组件的事件,用什么监听器来监听此组件的事件
像这个程序用它本身实现一下ActionListener不就很简单了吗?
public class Shijian extends JFrame implements ActionListener{

//你自己的代码
//在你的构造函数里面为两个按钮注册事件监听器
bt1.addActionListener(this);
bt2.addActionListener(this);




//实现ActionListener必须的代码
public void actionPerformed(ActionEvent ae){
if(ae.getSource()==bt1){
lblevent.setText("Button1 Clicked");
}
else if(ae.getSource()==bt2){
lblevent.setText("Button2 Clicked");

}


}



}


可惜不是你,陪我到最后
2006-03-28 10:40
guo001
Rank: 1
等 级:新手上路
帖 子:82
专家分:0
注 册:2006-3-19
收藏
得分:0 
有使用windowListener的简单代码吗?
说起来看的不是很明白, 我想通过代码在体会一下

2006-03-28 13:34
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 
你想要在按下按钮的时候产生事件,怎么会用到windowListener呢
windowListener只用在窗口事件中,比如窗口最大化,最小化,打开,关闭等这些操作时才会产生window事件

可惜不是你,陪我到最后
2006-03-28 14:03
guo001
Rank: 1
等 级:新手上路
帖 子:82
专家分:0
注 册:2006-3-19
收藏
得分:0 

我就是想要个代码 自己设置关闭 最大化,最小化,打开窗口和把窗口置与后台的按钮


2006-03-28 22:17
charliehy
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-3-29
收藏
得分:0 
我爱JAVA!
2006-03-29 02:35
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 
以下是引用guo001在2006-3-28 22:17:00的发言:

我就是想要个代码 自己设置关闭 最大化,最小化,打开窗口和把窗口置与后台的按钮

你想把你的窗口最大化,最小化,等操作直接点右上角的三个按钮不就可以了吗


可惜不是你,陪我到最后
2006-03-29 10:25
guo001
Rank: 1
等 级:新手上路
帖 子:82
专家分:0
注 册:2006-3-19
收藏
得分:0 

我就是想要个代码 看看其具体过程是怎么实现的!


2006-03-29 22:41
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 
这个应该是本地代码实现的。是用C/C++写的

可惜不是你,陪我到最后
2006-03-30 10:18
快速回复:[求助]怎样使用WindowListener
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018516 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved