我实际上只想做以下事情:
System.out.println("First line");
// wait 1 second
button.setText("newText");
我试过使用线程睡眠,但它不起作用。我试着理解摇摆计时器,但它太令人困惑了。我只想让代码延迟一秒钟。
进一步澄清:
public void actionPerformed(ActionEvent e) {
JButton clicked = (JButton) e.getSource();
clicked.setText("you clicked this button");
//timer here for 1 second,like a delay
clicked.setText("");
这样试试吧。第一个参数是1000毫秒的初始延迟。然后ActionEvent
对象用于获取事件的创建者(计时器(并停止它。
System.out.println("First line");
new Timer(1000, (ae)->{
button.setText("newText");
((Timer)ae.getSource()).stop();
}).start();