Java 多个搜索结果,一个GUI

Java 多个搜索结果,一个GUI,java,arrays,search,Java,Arrays,Search,我正在搜索一个数组,并将用户输入的日期与数组中存储的日期进行匹配 代码运行良好,可以完美地查找日期或给出适当的错误消息,唯一的问题是由于我的程序的性质,它可能会导致多个记录具有相同的日期 现在,我只有一个表单以这种格式显示每个搜索结果: lbl txtField lbl txtField 等等,如果日期匹配,它将在文本字段中显示与记录匹配的其余数据 现在,如何才能显示与日期匹配的每条记录的数据 我的代码: public void searchDay() { Stri

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

代码运行良好,可以完美地查找日期或给出适当的错误消息,唯一的问题是由于我的程序的性质,它可能会导致多个记录具有相同的日期

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

lbl txtField lbl txtField

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

现在,如何才能显示与日期匹配的每条记录的数据

我的代码:

       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;
            }

   }
}
public void searchDay(){
String idInputString=JOptionPane.showInputDialog(null,“请使用以下格式输入搜索的日期:DD/MM/YYYY”);
for(int i=0,count=0;i

谢谢。

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

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

最终UI可以在GUI的
页面开始处有一个
JList
,列出一天或一段时间的订单,但只显示“订单号”。然后在
中心有一个
JPanel
包含一组标签和字段,以显示列表中所选订单的详细信息


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

最终UI可能在GUI的
页面开始处有一个
JList
,列出一天或一段时间的订单,但仅显示“订单号”。然后在
中心有一个
JPanel
包含一组标签和字段,以显示列表中所选订单的详细信息


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

如果发现多个结果,是否可以创建多个副本表单。例如:我发现3个匹配的日期,3个窗体窗口显示每个结果?是的,只需将新的文本字段添加到您的jpanel(或您放置它们的任何容器),然后调用
revalidate
repaint
。实际上,有几个问题的答案包含了关于如何做到这一点的建议,其中一个问题是,如果发现多个结果,是否有可能创建多个副本表单。例如:我发现3个匹配的日期,3个窗体窗口显示每个结果?是的,只需将新的文本字段添加到您的jpanel(或您放置它们的任何容器),然后调用
revalidate
repaint
。事实上,有几个问题的答案包含了如何做到这一点的建议,其中一个是