RCP 非UI线程调用UI操作
2006-12-15 11:57
253 查看
如果刷新,定时等等需要操作的话 ,一般会另外起线程做监视,然后在返回对UI做操作。RCP中对UI的操作只能由UI线程进行,这时需要从非UI线程切换到UI线程进行操作。
//定时刷新线程
class RefreshThread extends Thread ...{
@Override
public void run() ...{
// 定时
long time = 0;
int intervalTime = 10; // 定义间隔时间
while (true) ...{
if (System.currentTimeMillis() - time > intervalTime * 1000) ...{
time = System.currentTimeMillis();
// 自定义线程启用同步UI主线程完成控件内容操作
Display.getDefault().syncExec(new Runnable() ...{
public void run() ...{
RefreshAction.getInstance().run();
}
});
}
}
}
}
//定时刷新线程
class RefreshThread extends Thread ...{
@Override
public void run() ...{
// 定时
long time = 0;
int intervalTime = 10; // 定义间隔时间
while (true) ...{
if (System.currentTimeMillis() - time > intervalTime * 1000) ...{
time = System.currentTimeMillis();
// 自定义线程启用同步UI主线程完成控件内容操作
Display.getDefault().syncExec(new Runnable() ...{
public void run() ...{
RefreshAction.getInstance().run();
}
});
}
}
}
}
相关文章推荐
- RCP 非UI线程调用UI操作
- UI多线程调用:线程间操作无效: 从不是创建控件"Form1"的线程访问它.
- wpf调用外部线程操作ui方法
- 关于UI控件跨线程调用
- 非UI线程可以去刷新UI吗(timertask调用progressbar的setProgress的特例)
- 多线程 非UI线程调用UI控件
- 主线程中也不绝对安全的 UI 操作
- Android 子线程操作更新UI方法
- 异常在该控件上执行的操作正从错误的线程调用。使用 Control.Invoke 或 Control.BeginInvoke 封送到正确的线程才能执行此操作。
- 关于非主线程中操作ui的实现
- c#利用委托跨线程调用UI控件完整使用方法
- 非UI线程可以去刷新UI吗(timertask调用progressbar的setProgress的特例)
- [WinForm]WinForm跨线程UI操作常用控件类大全
- 在WinFrom应用中,如果使用后台线程来操作界面应调用Control.Invoke()方法
- Atitit.swt 线程调用ui控件的方法
- 为什么WebClient在多线程中的操作会影响到UI线程(标题党)
- swt在其它线程中调用界面控件的操作
- 工作线程操作UI线程元素的方法
- Android中为什么主线程更新UI,子线程执行耗时操作?
- android子线程操作ui