gpt4 book ai didi

java - 将项目添加到 JTable 的数组中

转载 作者:行者123 更新时间:2023-12-01 23:45:31 26 4
gpt4 key购买 nike

我有一个只有字段名称而没有数据的表,我想从用户输入中输入数据,我该怎么做?

我的实际程序太长了,所以这是我写的一个小程序,要发布在这里。

我想添加到表中的内容示例如下:{"男装","RM 5",input,total}

输入来自第一个按钮,总计来自实际程序中的 setter getter 文件

我想使用列表,但它似乎与我的 Object[][] 顺序不兼容。

我想要实现的是在用户从按钮中选择项目后生成订单列表。

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

class test implements ActionListener
{
private Object[][]order={ }; // I need to add data here in order to put
//in the JTable

private JFrame f; // for 1st frame with the buttons
private JTable table;
private JScrollPane pane;
private JButton button1;
private JFrame f2; //pop up window after button2
private JButton button2;
private String input; //input when press button1

public test()
{

button1=new JButton("press here first");
button2=new JButton("press here after above");

//first frame config

f=new JFrame();
f.setSize(500,500);
f.setVisible(true);
f.setLayout(new GridLayout(2,0));
f.add(button1);
f.add(button2);


button1.addActionListener(this);
button2.addActionListener(this);
}

public static void main(String args[])
{
test lo=new test();
}


public void actionPerformed(ActionEvent e)
{

if(e.getSource()==button1) // for the first button
{
input=JOptionPane.showInputDialog(null,"how many do you want?");
//user input on the quantity
}

if(e.getSource()==button2)
{
window2();
}

}


public JFrame window2() //second window config
{
String[] title={"item","Price","Qty","total"};
table=new JTable(order,title);
pane=new JScrollPane(table);

f2=new JFrame();
f2.setSize(500,500);
f2.setVisible(true);
f2.setLayout(new FlowLayout());
f2.add(pane);
f2.pack();

return f2;
}

}

最佳答案

您应该按如下方式创建表格:

DefaultTableModel model = new DefaultTableModel(title, 0);
JTable table = new JTable( model );

这将创建一个仅包含标题和 0 行数据的表格。

然后,当您想要添加新的数据行时,您将使用:

model.addRow(...);

您可以将数据作为 vector 或数组添加到 DefaultTableModel。

如果您想使用列表,那么您需要使用自定义 TableModel 模型。您可以查看List Table Model .

关于java - 将项目添加到 JTable 的数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17130280/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com