如何在JLabel中显示队列?

时间:2018-05-23 16:19:09

标签: java swing netbeans queue

我有一个问题。我有一个队列,我想在JLabel文本中显示它,但我不知道如何将队列中的完整数据放在一个JLabel中,我的意思是。我知道方法JLabel.setText(),但是每次我从队列中显示一个新数据时,JLabel刷新然后我放在那个dissapear之前的数据,我想在JLabel间隔中显示完整的Queue数据,像这样但是在JLabel ......

 for(int i=0;i<Queue.length;i++);{
       {    System.out.print(Queue.push()+" ");}

我的问题是,当我尝试显示推送队列的另一个数据时,JLabel刷新文本......

   for(int i=0;i<Queue.length;i++);{
       {    JLabel.setText(Queue.push()+" ");}

有一种正确显示方法吗?谢谢!。

2 个答案:

答案 0 :(得分:1)

您需要收集字符串变量中的所有值,然后进行设置。

String text = "";
for(int i=0;i<Queue.length;i++){
   text += Queue.push()+" ";
}
JLabel.setText(text.trim());

将它显示为HTML可能会更好。所以你可以进行换行

String text = "<html>";
for(int i=0;i<Queue.length;i++){
   text += Queue.push()+"<br>";
}
text += "</html>"
JLabel.setText(text);

答案 1 :(得分:0)

您必须将文本添加到现有文本中:

for(int i=0;i<Queue.length;i++){
    JLabel.setText(JLabel.getText() + Queue.push()+ " ");
}

或者您可以存储数据并在最后将其设置为JLabel:

String s = "";

for(int i=0;i<Queue.length;i++){
    s = (s + Queue.push() + " ")
}

JLabel.setText(s);

希望它有所帮助。