如何在Eclipse RCP编程中从处理程序类将消息写入状态行

sol*_*tim 2 eclipse-rcp

我需要从处理程序类更改状态行消息.在阅读了RCP教程和eclipse FAQ之后,我终于做了类似这样的事情:

HandlerUtil.getActiveWorkbenchWindow(event).getActivePage().findView(AView.ID).getViewSite().getActionBars().getStatusLineManager().setMessage( "Ha, I'm finished");
Run Code Online (Sandbox Code Playgroud)

多长的调用链!

我是以正确的方式做到的吗?谢谢.

Von*_*onC 5

在论坛中看到的主题 来看,这看起来是正确的.

但要注意,如果您有异步反馈要放入此状态行.例如,
请参阅此主题.

UIJob job = new UIJob() {
    public IStatus run(IProgressMonitor monitor) {
    //do the long running work here

    Runnable results = new Runnable() {
        public void run(){
              // update UI elements here;
             getViewSite().getActionBars().getStatusLineManager().
               setMessage("End Pasting");
       }
    };
    display.asyncExec(results);
    }
};
job.schedule();
Run Code Online (Sandbox Code Playgroud)

(注意:可能不是您的情况,但我只是为了获取信息而添加此代码段)