我正在编写一个程序,其中我将一个名称与一个列表进行匹配。如果我没有找到匹配项,我在SQLite数据库上查找名称,将名称信息提取到文本字段中,然后显示该卡(cardlayout)。当我运行这个时,我只能得到最后一次不匹配的信息。在研究这个时,我想我可以使用SwingWorker来解决这个问题。我把我的做,并把它放在一个SwingWorker类,并添加一个发布()我想显示的信息。我得到相同的结果,只显示最后一个不匹配。Java SwingWorker未按预期工作
这里是我的代码片段:
public class processTeeTimes extends SwingWorker <Integer, String>
{
@Override
protected Integer doInBackground() throws Exception
{
// Process all tee times foursome at a time
String memberGuest; // Member or guest
do // Process players in foursome
{
.
.
.
if (!firstOnGHIN())
{
System.out.print("No match - first (" + tsTime + "): ");
printGolfer(); // Print no match
publish(golfer[0]);
}
.
.
.
}
while (!EOF)
}
@Override
protected void process(List<String> golferList)
{
for (int gIndex = 0; gIndex < golferList.size(); gIndex++)
{
textFieldRMLast.setText(golferList.get(gIndex));
cards.show(panelCont, ROSTERMAINT); // Show roster maint card
}
}
@Override
protected void done()
{
.
.
.
System.out.println("All done processing Tee Sheet");
}
任何帮助,将不胜感激。
我们不能编译也不能运行代码片段,我们不希望整个代码库。相反,我强烈建议您创建并发布有效的[mcve] - 请阅读链接。 –