Das Aktualisieren von JLabel in der for-Schleife wird empfohlen
Die Idee meines Programms ist, einen Namen aus einer Liste auszuwählen, die zuvor in einem anderen JFrame gespeichert wurde. Ich möchte alle Namen mit einer kleinen Verzögerung nacheinander in das Etikett drucken und danach bei einem von ihnen anhalten. Das Problem ist, dasslbl.setText("String");
funktioniert nicht, wenn es mehr als eine gibtsetText
Code.
Hier ist der Teil meines Codes:
public void actionPerformed(ActionEvent e)
{
if (RandomNames.size != 0)
{
for (int i = 0; i < 30; i++)
{
int rand = (int)(Math.random() * RandomNames.size);
stars.setText(RandomNames.list.get(rand));
try
{
Thread.sleep(100);
}
catch (InterruptedException err)
{
err.printStackTrace();
}
}
int rand2 = (int)(Math.random() * RandomNames.size);
stars.setText(RandomNames.list.get(rand2));
RandomNames.list.remove(rand2);
RandomNames.size = RandomNames.list.size();
}
if (RandomNames.list.size() == 0)
{
last.setText("\u062A\u0645 \u0638\u0647\u0648\u0631 \u062C\u0645\u064A\u0639 \u0627\u0644\u0623\u0633\u0645\u0627\u0621 \u0627\u0644\u062A\u064A \u0641\u064A \u0627\u0644\u0642\u0627\u0626\u0645\u0629 !");
}
}