在使用JFace时,如果继承ApplicationWindow对象,你就能立即获得一个含菜单(MenuManager),工具栏(ToolBarManager)、状态栏(StatusLineManager)的应用窗口。
本文主要介绍如何扩展状态栏(StatusLineManager),有时候我们会在状态栏中加入:当前登录用户信息、内存使用信息等等小控件。
当继承ApplicationWindow对象并实现一下方法后,即可创建状态栏(StatusLineManager)
只要从StatusLineManager对象中获取Control便能扩展,伪代码如下:
效果图见附件。
本文主要介绍如何扩展状态栏(StatusLineManager),有时候我们会在状态栏中加入:当前登录用户信息、内存使用信息等等小控件。
当继承ApplicationWindow对象并实现一下方法后,即可创建状态栏(StatusLineManager)
@Override
protected StatusLineManager createStatusLineManager() {
statusLineManager = new StatusLineManager() {
@Override
public void setErrorMessage(String message) {
if (statusLineManager != null) {
statusLineManager.setErrorMessage(ImageFactory.get(Constants.ERROR_IMAGE_KEY), message);
}
}
@Override
public void setMessage(String message) {
if (statusLineManager != null) {
statusLineManager.setMessage(ImageFactory.get(Constants.SUCCESS_IMAGE_KEY), message);
}
}
};
return statusLineManager;
}
只要从StatusLineManager对象中获取Control便能扩展,伪代码如下:
final Composite statusComposite = (Composite)statusLineManager.getControl();
final Composite composite = new Composite(statusComposite, SWT.LEFT_TO_RIGHT);
GridLayout gl = new GridLayout(1, false);
gl.marginHeight = 1;
composite.setLayout(gl);
CLabel label = new CLabel(composite, SWT.NONE);
label.setText("当前登录用户...");
效果图见附件。