FE我有一个电子邮件客户端,它接收新消息,带有传入消息的按钮开始执行某些操作,直到用户单击它以查看发生了什么。
我试图通过选择、等待然后取消选择按钮来吸引注意力,但这没有任何作用!
do{
button.setSelected(true);
Thread oThread = new Thread() {
@Override
public void run() {
synchronized (this) {
try {
wait(1000);
} catch (InterruptedException e1) {
e1.printStackTrace();
}
}
button.setSelected(false);
}
};
oThread.start();
}while(true);
为此,您应该使用 Swing 计时器。不要与外部线程中的 GUI 对象交互。
Java 教程中有一些文档:如何使用 Swing 定时器 http://docs.oracle.com/javase/tutorial/uiswing/misc/timer.html.
这是一个使用按钮图标来执行此操作的示例方法。
// member var
Icon buttonIcon;
Timer timer;
// in constructor for example
buttonIcon = new ImageIcon("resources/icon.png");
button.setIcon(buttonIcon);
timer = new Timer(1000, this);
timer.start();
// in the actionPerformed handler
if (button.getIcon() == null)
button.setIcon(icon);
else
button.setIcon(null);
你的班级需要实施ActionListener
为了这样工作。添加一些逻辑以在需要时停止闪烁。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)