我想在Android编程中使用处理程序,当我想将值发送回UI线程对象(如View)时。我会这样做:
Handler handler = new Handler();
这是在run方法中使用的代码:
handler.post(new Runnable() {
@Override
public void run() {
// access a view on the UI thread
}
});
然而,当在java swing应用程序中我想做同样的事情并且我得到编译器错误“Handler是抽象的并且无法实例化”当我尝试上面显示的相同的东西时。
Handler handler = new Handler();
所以如果这在Android中有效,我怎么能在Java桌面应用程序中做同样的事情呢?
答案 0 :(得分:1)
首先看一下Concurrency in Swing。
你走在正确的轨道上,但在Swing中你需要使用SwingUtilities.invokeLater(Runnable)
代替;)