使用字符串列表

时间:2017-03-10 14:13:41

标签: java swing

目前正在进行年终项目,我正在建立一个酒店预订系统。所以这是我的问题我想要显示客户在服务器中进行查询的预订(它是一个3层应用程序GUI-SERVER-Database)。 我想做的是创建一个Jtable whith列

String [] columnNames = {"开始日期","结束日期","用户ID",       "单人间的数量","双人间的数量",       "三人间的数量","家庭房的数量",};

,每行都是一个列表,从下面开始:

列出myList4 = new ArrayList(); 我的对象列表是:[[8,2017-02-02,2017-03-02,3,3,0,1,0],[17,2017-02-03,2017-03-05,3, 4,5,6,7]];

我对我必须要做的事感到非常困惑,我只想填充8个JLists,但它看起来很可怕,我需要用户能够选择每一行 - 保留,以便他可以删除它或更新它

2 个答案:

答案 0 :(得分:0)

如果你有JTable,你很可能不需要任何JL ... 参见例如关于如何填充JTable的How to add row in JTable?

您可能应该阅读有关JTables的教程以减轻您的困惑......(例如https://docs.oracle.com/javase/tutorial/uiswing/components/table.html上的官方教程)

您的上一个问题/要求可能符合以下条件:"太宽泛"并且与标题无关,因此只是一些提示:实施编辑取决于您的要求。您可以使表格单元格可编辑,也可以双击(只读)行上的一个条目打开对话框。可能最简单的黑客就是让单元格可编辑,添加一个带有"删除"复选框,并点击" Save"将整个表格写回数据库。按钮 - 但这远不是可扩展和优雅的。

答案 1 :(得分:0)

  

我的对象列表是......

因此您需要解析数据,以便将其添加到表中。

基本代码可能类似于:

String columnNames = { "Starting Date", "Ending Date", ... };
DefaultTableModel model = new DefaultTableModel(columnNames, 0);

for (int i = 0; i < myList4.size(); i++)
{
    List row = myList4.get(i);
    model.addRow( row.toArray(...) );
}

JTable table = new JTable( model );