黑马程序员技术交流社区

标题: GUI 一个小问题 [打印本页]

作者: 2528870651    时间: 2014-4-26 14:19
标题: GUI 一个小问题
本帖最后由 2528870651 于 2014-4-29 19:51 编辑
  1. import java.awt.*;
  2. import java.awt.event.*;

  3. class WindowDemo
  4. {
  5.         private Frame f;
  6.         private Button b;
  7.         private TextField tf;
  8.         private TextArea ta;

  9.         WindowDemo()
  10.         {
  11.                 init();
  12.         }

  13.         public void init()
  14.         {
  15.                 f = new Frame("my frame");
  16.                 f.setBounds(300,200,600,400);
  17.                 f.setLayout(new FlowLayout());

  18.                 b = new Button("转到");
  19.                 tf = new TextField(50);
  20.                 ta = new TextArea(10,50);

  21.                 f.add(tf);
  22.                 f.add(b);
  23.                 f.add(ta);
  24.                
  25.                 myEvent();
  26.                 f.setVisible(true);
  27.         }


  28.         public void myEvent()
  29.         {
  30.                 f.addWindowListener(new WindowAdapter()
  31.                 {
  32.                         public void windowClosing(WindowEvent e)
  33.                         {
  34.                                 System.exit(0);
  35.                         }
  36.                
  37.                 });

  38.                 b.addActionListener(new ActionListener()
  39.                 {
  40.                         public void actionPerformed(ActionEvent e)
  41.                         {
  42.                                 //if(ta.getText() != null)//这里不加if的结果和加if的结果怎么不同,
  43.                                                                                 //一个是不管怎样先设为空,一个是如果不为空,则设为空。
  44.                                                                                 //可是,不加if的话,他会每点击鼠标两次才清空一次
  45.                                                                                 //加了if才正常。
  46.                                                 ta.setText("");

  47.                                 String s = tf.getText();
  48.                                 
  49.                                 ta.append(s);
  50.                                 
  51.                                 
  52.                         }
  53.                 });



  54.         }


  55.         public static void main(String[] args)
  56.         {
  57.                 new WindowDemo();
  58.         }
  59. }
复制代码

2014-04-26_141338.png (4.27 KB, 下载次数: 34)

2014-04-26_141338.png

2014-04-26_141818.png (6.76 KB, 下载次数: 51)

2014-04-26_141818.png

作者: 水竹    时间: 2014-4-26 15:54
是很奇怪,不过貌似不是那个if的问题,因为就算文本区里面啥也没有,判断条件还是true。直接运行时一直是点两次清空一次,但我跟踪调试时候居然又正常了。
作者: 2528870651    时间: 2014-4-26 16:05
水竹 发表于 2014-4-26 15:54
是很奇怪,不过貌似不是那个if的问题,因为就算文本区里面啥也没有,判断条件还是true。直接运行时一直是点 ...

恩呢,郁闷,一直用editplus,调的时候也不会怎么调。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2