gpt4 book ai didi

java - Eclipse 插件 : how to update a view once a Job is complete

转载 作者:行者123 更新时间:2023-11-29 03:56:11 24 4
gpt4 key购买 nike

我的 Job 类中的 run 方法做了一些事情(细节无关紧要)并输出 2 个 double 组。

我想在结果 View 中显示这些数组,我用一个表和 2 列创建了这些数组,每个数组一列。

如何在运行方法结束时(在 Job 类中)引用 View 并在其中显示这些数组?

即使您不能帮我解答,但如果有人能指出我的方向,我会很高兴,因为我不知道。我唯一能想到的就是事件处理,但我对此也不是很了解。

class RunnerJob extends Job {
protected IStatus run(IProgressMonitor monitor) {
//does some stuff
double[] col1 = someStuff1();
double[] col2 = someStuff2();

//display in results view?
}
}

根据 Suraj Chandran 的回答,这是我用来引用 View 静态方法的代码,

display.syncExec(
new Runnable() {
public void run(){
try {
PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().showView(ResultsView.ID);
} catch (PartInitException e) {
e.printStackTrace();
}
ResultsView.update(<object with values>);
}
});

最佳答案

使用observer pattern (参见 example):

  1. 让你的 View 实现 Observer
  2. 让你的工作实现 Observable
  3. createPartControl()(或在构造函数),并且不要忘记在 dispose() 中注销它。
  4. 工作完成后通知观察员。

关于java - Eclipse 插件 : how to update a view once a Job is complete,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6292523/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com