在jTextArea中追加linkedList项

时间:2018-11-07 09:34:35

标签: linked-list delay jtextarea

我有一个需要在jTextArea中显示的linkedList。另外,它应该在显示时有所延迟。

列表:

        LinkedList<String> linkedList = new LinkedList<>();
        linkedList.add("Email1");
        linkedList.add("Email2");
        linkedList.add("Email3");
        linkedList.add("Email4");

我尝试了以下代码

{
            try {
                   for (int i = 0; i < linkedList.size(); i++) {
                    jTextAreaEmail.setText(linkedList.get(i));
                    //System.out.println(linkedList.get(i).toString());

                    Thread.sleep(1000);
                }
            } catch (IOException e1) {
                e1.printStackTrace();
            } catch (InterruptedException e1) {
                e1.printStackTrace();
            }
            jTextAreaStatus.setText("Job Completed!");
        }

当我尝试在控制台中执行它时,它工作正常。它一一拖延了。

System.out.println(linkedList.get(i).toString());

但是当我尝试附加文本时,我的jTextArea在开始时没有显示任何内容。 UI只会冻结一段时间,然后显示最后一个元素。 请你帮助我好吗。

1 个答案:

答案 0 :(得分:0)

这次尝试

String name = Username.getText(); //get text from text field
String name2 = mylist.getText();//get text from text area
mylist.setText(""); //remove all text in text area
Queue<String> myQ=new LinkedList<String>();

    myQ.add(name2);//add already writen data in text area
    myQ.add(name);//add text field data

    for(String str : myQ){ //iterate
        //System.out.print(str +" ");
        mylist.append(str +" ");//append into text area

    }

您可以使用for循环来迭代MyQ