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