import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import javax.swing.*;
import javax.swing.event.*;public class ButtonDemo extends Applet implements ActionListener{

JPanel p1,p2;
String str;
JTextField txtField;
JList lst;
public void init(){
JLabel lab1=new JLabel("输入您的内容:");
JLabel lab2=new JLabel("您所填入的内容:");
JButton btn1=new JButton("提交到列表");
JButton btn2=new JButton("重置");
        
    txtField=new JTextField(10);
    
//定义数组
; String[] Array={"Hello world"}; //设置列表框

DefaultListModel listData=new DefaultListModel();
listData.addElement(Array); 
lst=new JList(Array); 
        lst.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
lst.setSelectedIndex(0);
        
        

        p1=new JPanel(new FlowLayout());
        p2=new JPanel(new BorderLayout());

    //添加文本与按钮
p1.add(lab1);
p1.add(txtField);
p1.add(btn1);
btn1.addActionListener(this);
p1.add(btn2);
// btn2.addActionListener(this);

// p2.add(lab2);
        p2.add(lst);
        
        setLayout(new BorderLayout());
        add(p1,BorderLayout.NORTH);
        add(p2,BorderLayout.CENTER);
        p2.add(new JScrollPane(lst));
 

}
public void actionPerformed(ActionEvent ae){
     try{
         if(txtField.getText().equals("")){
               JOptionPane.showMessageDialog(this,"输入的值不能为空值","错误",JOptionPane.ERROR_MESSAGE);
                   txtField.setText("");}
         else{
             str=String.valueOf(txtField.getText());
            
        
           }   
//          lstArray[0].getText().equals(str);}
     } catch (Exception e)
           {
             txtField.getText().equals("错误");
            }
     }
 
 }
程序的目的是点击文本框JTextField,能将文本框的内容添加到JList中去,请指教!初学者

解决方案 »

  1.   

    JTextField是不接受ActionEvent事件的。从你的代码来看,离你要实现的功能还很远,不是修修改改就能完事的。建议你再学习多些 Swing构件再来写这个程序。
      

  2.   

    package list;import java.awt.BorderLayout;
    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JList;
    import javax.swing.JTextField;
    import java.awt.Rectangle;
    import java.awt.event.MouseEvent;
    import java.awt.event.MouseAdapter;public class Frame1 extends JFrame {
        public Frame1() {
            try {
                jbInit();
            } catch (Exception exception) {
                exception.printStackTrace();
            }
        }    private void jbInit() throws Exception {
            getContentPane().setLayout(null);
            jButton1.setBounds(new Rectangle(118, 219, 152, 33));
            jButton1.setText("jButton1");
            jButton1.addMouseListener(new Frame1_jButton1_mouseAdapter(this));
            this.getContentPane().add(jButton1);
            jList1.setBounds(new Rectangle(85, 63, 235, 124));
            this.getContentPane().add(jTextField1);
            this.getContentPane().add(jList1);
            jTextField1.setText("jTextField1");
            jTextField1.setBounds(new Rectangle(59, 19, 308, 24));
            this.setSize(600,400);
            this.setVisible(true);
            this.setDefaultCloseOperation(this.EXIT_ON_CLOSE);
        }
        
        public static void main(String stra[]){
            new Frame1();
        }    JButton jButton1 = new JButton();
        JTextField jTextField1 = new JTextField();
        JList jList1 = new JList();
        public void jButton1_mouseClicked(MouseEvent e) {
            Object obj[] = new Object[1];
            obj[0]=jTextField1.getText();
            jList1.setListData(obj);
        }
    }
    class Frame1_jButton1_mouseAdapter extends MouseAdapter {
        private Frame1 adaptee;
        Frame1_jButton1_mouseAdapter(Frame1 adaptee) {
            this.adaptee = adaptee;
        }    public void mouseClicked(MouseEvent e) {
            adaptee.jButton1_mouseClicked(e);
        }
    }