A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 陆旭东 中级黑马   /  2013-3-29 21:19  /  1336 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 陆旭东 于 2013-3-30 16:30 编辑
  1. import javax.swing.*;
  2. //import javax.swing.JButton;
  3. import javax.swing.JLabel;
  4. //import java.awt.AWTEvent.ComponentEvent.InputEvent.KeyEvent;
  5. //import java.awt.Component.*;
  6. //import java.util.EventListener.*;
  7. import java.awt.event.*;
  8. public class EventDemo extends JFrame{

  9.         /**
  10.          * @param args
  11.          */
  12.         private JTextField textField1;
  13.         private JTextField textField2;
  14.         public static void main(String[] args) {
  15.                 // TODO Auto-generated method stub
  16.                 EventDemo frame=new EventDemo();
  17.                 frame.setVisible(true);
  18.         }
  19.         public EventDemo(){
  20.                 super();
  21.                 getContentPane().setLayout(null);
  22.                 setBounds(100,100,305,113);
  23.                 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  24.                 textField1=new JTextField();
  25.                 textField1.addKeyListener(new TextKeyListerner());
  26.                 textField1.setBounds(115,12,172,22);
  27.                 getContentPane().add(textField1);
  28.                 textField2=new JTextField();
  29.                 textField2.setBounds(115,40,172,22);
  30.                 getContentPane().add(textField2);
  31.                 final JLabel label=new JLabel();
  32.                 label.setText("第一个文本框:");
  33.                 label.setBounds(10,12,99,18);
  34.                 getContentPane().add(label);
  35.                 final JLabel label_1 =new JLabel();
  36.                 label.setText("第二个文本框:");
  37.                 label.setBounds(10,40,99,18);
  38.                 getContentPane().add(label_1);
  39.         }
  40.         private final class TextKeyListerner implements KeyListener{
  41.                 public void keyPressed(KeyEvent e){
  42.                         
  43.                 }
  44.                 public void keyReleased(KeyEvent e){
  45.                         String text = textField1.getText();//获取第一个文本框的字符串
  46.                         textField2.setText(text);//赋值给第二个文本框
  47.                 }
  48.                 public void keyTyped(KeyEvent e){
  49.                         
  50.                 }
  51.         }

  52. }
复制代码
请问这段代码的运行后为什么第一个文本框之前的标签”第一个文本框“怎么不会显示。看不出什么问题……

评分

参与人数 1技术分 +1 收起 理由
陈丽莉 + 1

查看全部评分

5 个回复

倒序浏览
第37  38行对象用错了    两个label换成label-1  即可。
回复 使用道具 举报
import javax.swing.*;
//import javax.swing.JButton;
import javax.swing.JLabel;
//import java.awt.AWTEvent.ComponentEvent.InputEvent.KeyEvent;
//import java.awt.Component.*;
//import java.util.EventListener.*;
import java.awt.event.*;
public class EventDemo extends JFrame{

        /**
         * @param args
         */
        private JTextField textField1;
        private JTextField textField2;
        public static void main(String[] args) {
                // TODO Auto-generated method stub
                EventDemo frame=new EventDemo();
                frame.setVisible(true);
        }
        public EventDemo(){
                super();
                getContentPane().setLayout(null);
                setBounds(100,100,305,113);
                setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                textField1=new JTextField();
                textField1.addKeyListener(new TextKeyListerner());
                textField1.setBounds(115,12,172,22);
                getContentPane().add(textField1);
                textField2=new JTextField();
                textField2.setBounds(115,40,172,22);
                getContentPane().add(textField2);
                final JLabel label=new JLabel();
                label.setText("第一个文本框:");
                label.setBounds(10,12,99,18);
                getContentPane().add(label);
                final JLabel label_1 =new JLabel();
                label_1.setText("第二个文本框:");  //_
                label_1.setBounds(10,40,99,18);  //_
                getContentPane().add(label_1);
        }
        private final class TextKeyListerner implements KeyListener{
                public void keyPressed(KeyEvent e){
                        
                }
                public void keyReleased(KeyEvent e){
                        String text = textField1.getText();
                        textField2.setText(text);
                }
                public void keyTyped(KeyEvent e){
                        
                }
        }

}

评分

参与人数 1技术分 +1 收起 理由
陈丽莉 + 1

查看全部评分

回复 使用道具 举报
label.setText("第一个文本框:");

                label.setBounds(10,12,99,18);

                getContentPane().add(label);

                final JLabel label_1 =new JLabel();

                label.setText("第二个文本框:");

                label.setBounds(10,40,99,18);

这两个label名字一样后面的会覆盖前面的,你的名字应该是写错了

评分

参与人数 1技术分 +1 收起 理由
陈丽莉 + 1

查看全部评分

回复 使用道具 举报
不错,大家眼睛好尖啊,谢谢!
回复 使用道具 举报
还有问题的话继续追问~  么有了就将帖子分类改成【已解决】~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马