这个JAVA小程序错在哪里啊,怎么不显示呢?

publicclasstestextendsJFrameimplementsKeyListener{JPanelmp=newJPanel();JTextFieldjfd=... public class test extends JFrame implements KeyListener{

JPanel mp=new JPanel();
JTextField jfd=new JTextField(10);
JTextField jfd2=new JTextField(10);
public test(){
mp.setLayout(new GridLayout(2,1));
mp.add(jfd);
mp.add(jfd2);
this.setContentPane(mp);
jfd.addKeyListener(this);
}
public static void main(String[] args) {
test mm=new test();
mm.setVisible(true);
mm.setTitle("测试");
mm.setBounds(200,200,650,600);
}

public void keyPressed(KeyEvent at) {
String num="I love you!";
try{
if(at.getKeyCode()==10){
if(jfd.getText().equals("my")){
jfd2.setText(num);
}
}

}catch(Exception e){
e.printStackTrace();
}
}

public void keyReleased(KeyEvent arg0) {
// TODO Auto-generated method stub

}

public void keyTyped(KeyEvent arg0) {
// TODO Auto-generated method stub
}
}
请高手帮我看看啊,谢谢了!
我是想按回车键来监听事件的。
展开
 我来答
韦涵涵
2009-07-14 · TA获得超过3892个赞
知道大有可为答主
回答量:1034
采纳率:100%
帮助的人:1516万
展开全部
import java.awt.GridLayout;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class test extends JFrame implements KeyListener {

JPanel mp = new JPanel();
JTextField jfd = new JTextField(10);
JTextField jfd2 = new JTextField(10);

public test() {
setBounds(200, 200, 650, 600);
mp.setLayout(new GridLayout(2, 1));
mp.add(jfd);
mp.add(jfd2);
this.setContentPane(mp);
jfd.addKeyListener(this);
}

public static void main(String[] args) {
test mm = new test();
mm.setVisible(true);
mm.setTitle("测试");
}

public void keyPressed(KeyEvent at) {
String num = "I love you!";
try {
if (at.getKeyCode() == 10) {
if (jfd.getText().equals("my")) {
jfd2.setText(num);
}
}

} catch (Exception e) {
e.printStackTrace();
}
}

public void keyReleased(KeyEvent arg0) {
// TODO Auto-generated method stub

}

public void keyTyped(KeyEvent arg0) {
// TODO Auto-generated method stub
}
}

把这一句

setBounds(200, 200, 650, 600);

弄到上面就行了。。。

那是因为你在没有设置窗口的大小之前就把组件放进去。

所以看不见组件。。。也难怪。。
我是凡河
2009-07-14 · 超过19用户采纳过TA的回答
知道答主
回答量:57
采纳率:0%
帮助的人:64.4万
展开全部
没显示窗口么?不会是JFrame的visible值都没设吧?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友388688327
2009-07-14 · TA获得超过1053个赞
知道小有建树答主
回答量:1297
采纳率:0%
帮助的人:969万
展开全部
要mm.setVisible(true),这样窗口才可以显示的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友7ce2c09
2009-07-15 · TA获得超过543个赞
知道小有建树答主
回答量:421
采纳率:0%
帮助的人:271万
展开全部
在主函数程序段最后加上this.visible(true);这个方法的意思是使你的程序窗口显示出来
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式