| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 861 人关注过本帖
标题:[求助]监听事件失效
只看楼主 加入收藏
super523996
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2006-12-2
收藏
 问题点数:0 回复次数:4 
[求助]监听事件失效

import java.io.*;
import java.net.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

class abc extends Frame implements ActionListener,KeyListener
{
TextField tf,name_txt;
TextArea ta;
Panel p,p1;
Button button,button1,button2;
Label label;
CheckboxGroup sex;
Checkbox box1,box2;

public abc()
{
tf=new TextField(25);
name_txt=new TextField(10);
ta=new TextArea();
label=new Label("输入昵称");
sex=new CheckboxGroup();
box1=new Checkbox("男",false,sex);
box2=new Checkbox("女",false,sex);
button=new Button("send");
button1=new Button("进入聊天室");
button2=new Button("退出聊天室");
p=new Panel();
p1=new Panel();


p.add(ta);
p.add(tf);
p.add(button);
p1.add(label);p1.add(name_txt);
p1.add(box1);p1.add(box2);
p1.add(button1);p1.add(button2);
p.add(p1);
add(p);
button.addActionListener(this);
tf.addKeyListener(this);


addWindowListener(new WindowDestroyer());
}

public void actionPerformed(ActionEvent e)
{
String s,str;
s=name_txt.getText()+"["+sex.getSelectedCheckbox().getLabel()+"]"+"说:";
if(e.getSource()==button)
{
str=tf.getText();

tf.setText("");

ta.append(s+str+"\n");
}
if(e.getSource()==button1)
{
ta.append("欢迎进入聊天室!"+"\n");

}

}

public void keyPressed(KeyEvent e)
{
String s;
s=name_txt.getText()+"["+sex.getSelectedCheckbox().getLabel()+"]"+"说:";
if(e.getKeyCode()==KeyEvent.VK_ENTER)
{
if((e.getModifiers()&InputEvent.CTRL_MASK)!=0)
{
ta.append(s+tf.getText()+"\n");
tf.setText("");
}
}


}

public void keyTyped(KeyEvent e)
{
}
public void keyReleased(KeyEvent e)
{
}

}


class WindowDestroyer extends WindowAdapter
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
}

public class ex extends Frame
{
public static void main(String arg[])
{
abc win=new abc();
win.setSize(500,300);
win.setVisible(true);

}
}
运行时,这里面的button1("进入聊天室")按键的监听事件失效,好像是因为button1是面板P里面的面板P1中的组件,但不知道怎么改才能让它有效,各位帮帮忙,原文件在附件里,帮忙看一下

搜索更多相关主题的帖子: import java awt 监听 失效 
2006-12-09 01:00
super523996
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2006-12-2
收藏
得分:0 
运行时,这里面的button1("进入聊天室")按键的监听事件失效,好像是因为button1是面板P里面的面板P1中的组件,但

不知道怎么改才能让它有效,各位帮帮忙,原文件在附件里,帮忙看一下
2006-12-09 01:01
purana
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:广东-广州
等 级:版主
威 望:66
帖 子:6039
专家分:0
注 册:2005-6-17
收藏
得分:0 

我没有看到你哪行监听了button1和button2

import java.io.*;
import java.net.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

class abc extends Frame implements ActionListener,KeyListener
{
TextField tf,name_txt;
TextArea ta;
Panel p,p1;
Button button,button1,button2;
Label label;
CheckboxGroup sex;
Checkbox box1,box2;

public abc()
{
tf=new TextField(25);

name_txt=new TextField(10);
ta=new TextArea();
label=new Label("输入昵称");
sex=new CheckboxGroup();
box1=new Checkbox("男",false,sex);
box2=new Checkbox("女",false,sex);
button=new Button("send");
button1=new Button("进入聊天室");
button1.addActionListener(this);
button2=new Button("退出聊天室");
button2.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
System.exit(0);
}
});
p=new Panel();
p1=new Panel();


p.add(ta);
p.add(tf);
p.add(button);
p1.add(label);p1.add(name_txt);
p1.add(box1);p1.add(box2);
p1.add(button1);p1.add(button2);
p.add(p1);
add(p);
button.addActionListener(this);
tf.addKeyListener(this);


addWindowListener(new WindowDestroyer());
}

public void actionPerformed(ActionEvent e)
{
String s,str;
s=name_txt.getText()+"["+sex.getSelectedCheckbox().getLabel()+"]"+"说:";
if(e.getSource()==button)
{
str=tf.getText();

tf.setText("");

ta.append(s+str+"\n");
}
if(e.getSource()==button1)
{
ta.append("欢迎进入聊天室!"+"\n");

}

}

public void keyPressed(KeyEvent e)
{
String s;
s=name_txt.getText()+"["+sex.getSelectedCheckbox().getLabel()+"]"+"说:";
if(e.getKeyCode()==KeyEvent.VK_ENTER)
{
if((e.getModifiers()&InputEvent.CTRL_MASK)!=0)
{
ta.append(s+tf.getText()+"\n");
tf.setText("");
}
}


}

public void keyTyped(KeyEvent e)
{
}
public void keyReleased(KeyEvent e)
{
}

}


class WindowDestroyer extends WindowAdapter
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
}

public class ex extends Frame
{
public static void main(String arg[])
{
abc win=new abc();
win.setSize(500,300);
win.setVisible(true);

}
}


我的msn: myfend@
2006-12-09 09:36
super523996
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2006-12-2
收藏
得分:0 

原来如此,好低级的错误啊,真晕啦,居然把那两句话弄掉了

2006-12-09 22:05
super523996
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2006-12-2
收藏
得分:0 

谢谢啦

2006-12-09 22:08
快速回复:[求助]监听事件失效
数据加载中...
 
   



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

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