我有一个函数 graphics() 创建我的 JFrame 和两个 JRadioButtons 并向它们添加 ActionListeners。此图形从 main() 调用,图形本身调用 game()。
public void game() throws Exception
{
jTextArea1.setLineWrap(true);
jTextArea1.setWrapStyleWord(true);
jTextArea1.setText("This is private information.");
jRadioButton1.setVisible(true);
jRadioButton2.setVisible(true);
try {
t.sleep(40000);
repaint();
} catch (InterruptedException e) {
// We've been interrupted: no more messages.
return;
}
显示“这是私人信息”后。在文本区域中,我希望程序执行暂停 40 秒,或者直到用户按下 JRadioButton,以较早者为准。所以我添加了一个 ActionListener 并在其中调用了 t.interrupt() 。
private void jRadioButton1ActionPerformed(java.awt.event.ActionEvent evt) {
t.interrupt();
jRadioButton1.setVisible(false);
jRadioButton2.setVisible(false);
//System.out.println(t.interrupted());
jTextArea1.setText("Please wait...");
}
但是,即使在选择了应该触发中断的 JRadioButton 之后,也不会发生这种情况,并且 t.interrupted 返回 false。
任何帮助,将不胜感激。