Java Gui JList ActionListener

Java Gui JList ActionListener,java,swing,user-interface,jlist,Java,Swing,User Interface,Jlist,大家好,晚上好,我的第二个按钮“提交”有问题,因为我无法将我输入的所有信息传输到框架中的空JList这里是我的代码,到目前为止,我的问题是如果我单击“提交”,我的所有信息将显示在框架中的消息区域,它需要列表。谢谢 import javax.swing.*; import java.awt.*; import java.awt.event.*; public class vin extends JFrame { JLabel lab = new JLabel("Enter You

大家好,晚上好,我的第二个按钮“提交”有问题,因为我无法将我输入的所有信息传输到框架中的空JList这里是我的代码,到目前为止,我的问题是如果我单击“提交”,我的所有信息将显示在框架中的消息区域,它需要列表。谢谢

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

public class vin extends JFrame
{
        JLabel lab = new JLabel("Enter Your Name :");
        JLabel lab2 = new JLabel("Enter Your Birthday :");
        JLabel lab3 = new JLabel("Enter Your Age:");
        JLabel lab4 = new JLabel("Enter Your HomeTown:");
        JLabel lab5 = new JLabel("Choose Your Department:");
        JButton b1 = new JButton("Exit");
        JTextField t1 = new JTextField(15);
        JTextField t2 = new JTextField(15);
        JTextField t3 = new JTextField(15);
        JTextField t4 = new JTextField(15);
        JButton b2 = new JButton("Submit");
        JButton b3 = new JButton("Clear");
         JLabel lab6 = new JLabel("Message :");
        JList list = new JList();
        JPanel panel = new JPanel();
        JLabel brief;

    public vin()
    {

        setLocation(500,280);
        panel.setLayout(null);


        lab.setBounds(10,10,150,20);
        t1.setBounds(130,10,150,20);
        lab5.setBounds(10,40,150,20);
        lab2.setBounds(10,140,150,20);
        t2.setBounds(130,140,150,20);
        lab3.setBounds(10,170,150,20);
        t3.setBounds(110,170,150,20);
        lab4.setBounds(10,200,150,20);
        t4.setBounds(150,200,150,20);
        lab6.setBounds(10,240,150,20);
        list.setBounds(50,270,150,20);
        list.setSize(250,150);
        b1.setBounds(250,470,150,20);
        b2.setBounds(60,470,150,20);
        b3.setBounds(160,470,150,20);
        b1.setSize(60,30);
        b2.setSize(75,30);
        b3.setSize(65,30);


        panel.add(lab);
        panel.add(t1);
        panel.add(lab5);
        panel.add(lab2);
        panel.add(t2);
        panel.add(t3);
        panel.add(t4);
        panel.add(lab4);
        panel.add(lab3);
        panel.add(lab6);
        panel.add(b1);
        panel.add(b2);
        panel.add(b3);
        panel.add(list);

        brief = new JLabel("Goodmorning "+t1+" Today is "+t2+" its your birthday You are now"+t3+" of age You are From"+t4);
        getContentPane().add(panel);


        b1.addActionListener(new ActionListener()
        {
           public void actionPerformed(ActionEvent a)
           {
               Object source = a.getSource();

               if(source == b1)
               {
                   System.exit(0);
               }
           }
        });

        b2.addActionListener(new ActionListener()
        {

            public void actionPerformed(ActionEvent a)
            {
                Object source = a.getSource();

                if(source == b2)
                {
                   list = new JList();
                }  
            }
        });
        b3.addActionListener(new ActionListener()
        {
           public void actionPerformed(ActionEvent a)
           {
               Object source = a.getSource();

               if(source == b3)
               {
                   t1.setText("");
                   t2.setText("");
                   t3.setText("");
                   t4.setText("");
               }
           }
        });
    }       

    public static void main(String args [])
    {
        vin w = new vin();

        w.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        w.setSize(400,600);
        w.setVisible(true);
    }
}

好的,根据我的理解,这将从字段中获取信息,并将它们放入列表中

b2.addActionListener(新ActionListener() {

        public void actionPerformed(ActionEvent a)
        {
            DefaultListModel listModel = new DefaultListModel();
            listModel.addElement(t1.getText());
            listModel.addElement(t2.getText());
            listModel.addElement(t3.getText());
            listModel.addElement(t4.getText());
            list.setModel(listModel);


        }
    });
我为你们做的很简单,所以你们可以看到我在做什么,我会把txtfield放到数组中,这样它就容易了,这对你们来说很好:)


你可以用数组和for循环来做,这样你就可以摆脱listmodel.add…等,每次你都想知道用户以前使用的所有信息,例如arraylist。我不知道你下次发布问题时,你的程序会如何运行。请指出确切的问题,以及你希望程序具体如何工作所有。也只发布相关代码,而不是全部。

你问的问题还不太清楚。你想让侦听器在b2上,如果你单击,将初始化列表,然后?就这样?我不明白你的问题是什么,为什么你在
actionListener
list=new JList()
?是的,先生,如果我单击b2,它将出现在我的消息中,框架底部的白色,先生。它将显示所有信息,如姓名、年龄、,etc@nachokk因为我需要把我所有的信息都调出到我框架中的JList中。现在我想我明白了一点。你有一些文本字段可以获取信息,你可以在submit c上获取这些信息单击并将其放入列表中?我可以在t1.getText();?中添加一些字符串吗?比如(“blabla”+t1.getText());?当然可以。:)试试看。返回时,它的行为与字符串完全相同