【发布时间】:2014-06-20 16:47:02
【问题描述】:
我在 Thread 中遇到问题。这是我的代码
private void CustomBrightActionPerformed(java.awt.event.ActionEvent evt) {
creed = new Thread() {
public void run() {
final JFrame jfmae = new JFrame("Set BrightNess");
JLabel jla = new JLabel("!@#$");
jfmae.add(jla, BorderLayout.CENTER);
jfmae.setSize(180, 180);
jfmae.addMouseListener(new Mymos());
jfmae.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent windowEvent) {
jfmae.dispose();
}
});
jfmae.setVisible(true);
}
};
creed.start();
}
class Mymos extends MouseAdapter {
public void mousePressed(java.awt.event.MouseEvent evt) {
try {
creed.sleep(3000);
} catch (InterruptedException e) {
}
Bigh2MousePressed(evt);
}
private void Bigh2MousePressed(java.awt.event.MouseEvent evt) {
System.out.println("dsds");
}
}
CustomBrightActionPerformed
是另一个处理动作事件的类的方法,Mymos 是内部类。问题是我正在睡觉creed Thread,但我的主线程也睡了 3 秒。为什么?
【问题讨论】:
标签: java multithreading swing thread-sleep