gpt4 book ai didi

java - 在 Java 中使用多个 void

转载 作者:行者123 更新时间:2023-12-02 07:23:14 26 4
gpt4 key购买 nike

在过去的几个月中,我尝试了 Java 编程,并且在大多数情况下没有遇到任何问题,但现在我在处理 void 时遇到了一些麻烦。在我的程序中,用户按下一个按钮,目标是在 JLabel 上显示多条消息,这些消息通过 Thread.sleep() 方法展开。由于某种原因,只有最后一个最终被发送。这是我的代码。这不是全部,但我很确定问题就在这里。那里的错误输出是为了尝试看看代码中发生了什么,但是,显然它们最终没有工作。

private class ClickListener implements ActionListener 
{
public void actionPerformed(ActionEvent e)
{
try {
if (e.getSource() == exitButton)
System.exit(0);

else if (e.getSource() == button1)
alValue = "This is the new message text.";
System.err.println(alValue);
createNewArrayList();
Thread.sleep(3000);
alValue = "Back to invisible...";
System.err.println(alValue);
createNewArrayList();
Thread.sleep(2000);
alValue = "";
System.err.println(alValue);
createNewArrayList();
} catch (InterruptedException ex) {
Logger.getLogger(EmptySpace.class.getName()).log(Level.SEVERE, null, ex);
}
}
}

private void createNewArrayList() {
ArrayList al = new ArrayList();
al.add(alValue);
label1.setText("" + al);
}

最佳答案

不要在EDT中调用Thread.sleep(),使用Swing Timer反而。相应地调整周期间隔以改变 System.out 调用之间的延迟。 始终使用大括号来阐明 if 语句的范围。

关于java - 在 Java 中使用多个 void,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13922944/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com