多个搜索结果,一个GUI

时间:2012-06-01 13:41:30

标签: java arrays search

我正在搜索数组并将用户输入的日期与存储在数组中的数据进行匹配。

代码工作正常并找到日期或完美地给出相应的错误消息,唯一的问题是由于我的程序的性质,它留下了多个记录具有相同日期的可能性。

现在,我只有一个表单以这种格式显示每个搜索结果:

lbl txtField lbl txtField

等,如果日期匹配,它将显示与文本字段中的记录匹配的数据的REST。

现在,如何显示每个记录与日期匹配的数据?

我的代码:

       public void searchDay() {
        String idInputString  = JOptionPane.showInputDialog(null, "Please enter the Date you're searching for using the format: DD/MM/YYYY");


        for (int i = 0, count = 0; i < orderID.length; i++) {
            if (idInputString.equals(startDate[i])) {

                txtOrderID.setText(orderID[i]);
                txtOrderForename.setText(customerForename[i]);
                txtOrderSurname.setText(customerSurname[i]);

                txtOrderAddress1.setText(address1[i]);
                txtOrderAddress2.setText(address2[i]);
                txtOrderTown.setText(town[i]);
                txtOrderCounty.setText(county[i]);
                txtOrderPost.setText(postCode[i]);
                txtOrderCarModel.setText(carModel[i]);

                txtOrderCarReg.setText(carReg[i]);
                txtOrderStartDate.setText(startDate[i]);
                txtOrderStartTime.setText(startTime[i]);

                txtOrderSerial.setText(serialNum[i]);
                count++;
            } 
            if(i == orderID.length - 1 && count==0){
                JOptionPane.showMessageDialog(null, "Order ID Doesn't Exist", "Error!", JOptionPane.WARNING_MESSAGE);
                break;
            }

   }
}

谢谢。

2 个答案:

答案 0 :(得分:2)

动态创建更多文本字段,或将结果放入JTable

答案 1 :(得分:1)

最终用户界面可以在GUI的JList处有一个PAGE_START,其中列出了某天或某个范围的订单,但只显示了订单号码&#39;。然后让JPanelCENTER中包含一组标签和字段,以显示列表中所选订单的详细信息。

@Ray建议的JTable可能是一个可行的替代方案,但我有时觉得数据比在单个表行中更好地呈现(每个订单使用一行)。