討厭的方式: 依賴於狀態行類不改變的執行 - 謹慎,以便繼續進行:
StatusLineManager.getControl()返回一個狀態行(其包受保護的),然而,它的子類複合材料,這意味着你可以調用getChildren(),其中的一個孩子將成爲一個包含該消息的CLabel。
雖然這是可怕的hacky。
更好的方式,但更多的工作:
從StatusLineManager它說,客戶可以繼承,以提供不同的佈局的文檔,所以想必你可以繼承這一點,並提供曝光的最後狀態信息的一種手段。
如果你正在構建你應該繼承WorkbenchWindowAdvisor一個RCP,它有一個構造函數:
public WorkbenchWindowAdvisor(IWorkbenchWindowConfigurer configurer) ...
從constuctor你可以稱之爲:
configurer.setPresentationFactory(factory);
注意,從我的javadoc:
Deprecated. the presentation factory is now obtained via extension point and a preference on org.eclipse.ui specifying which one to use; see IWorkbenchPreferenceConstants.PRESENTATION_FACTORY_ID
因此,您可能需要調查該擴展點。
工廠對象應該是你自己的AbstractPresentationFactory(或實際上WorkbenchPresentationFactory), 的子類重寫此方法:
public IStatusLineManager createStatusLineManager() {
return new StatusLineManager();
}
返回自己StatusLineManager的子類。
注意:我正在使用Eclipse 3.4.2,所以請仔細檢查您正在使用的版本的文檔。