微科社区,轻松开发从此开始! 请登陆 免费注册

微科社区

当前位置:首页 > Java平台 > Eclipse >

setEnabled(false)

时间:2016-04-18 22:56  浏览:努力统计中...
org.eclipse.jface.action.Action中的setEnabled应该是灰色的,我调用为什么就是不显示? 类结构: XXXextendsActionimplementsISelectionChangedListener{} 更多 分享到: 发个截图吧?不知道你的意思 MenuManag
org.eclipse.jface.action.Action中的setEnabled应该是灰色的,我调用为什么就是不显示?
类结构:
    XXX  extends Action implements ISelectionChangedListener{ }


发个截图吧?不知道你的意思

 

MenuManager menuMgr = new MenuManager();
menuMgr.setRemoveAllWhenShown(true);
menuMgr.addMenuListener(new IMenuListener() {
public void menuAboutToShow(IMenuManager manager) {
IStructuredSelection selection = (IStructuredSelection) getViewer().getSelection();
                IAction action = new XXXAction();
                if(action.isEnabled())
                       manager.add(action); 
}
});
TreeViewer viewer = getViewer();
Menu menu = menuMgr.createContextMenu(viewer.getTree());
viewer.getTree().setMenu(menu);


在Action的setEnabled方法中写一些判断,红色的地方如果不加的话就是灰色 , 如果加的话就Action消失。我想要的效果是加上这句话也不会消失!

哦, 这里不应该有isEnable().   但是我的问题是在manager上添加上了action后 还是灰掉的状态!


TAG:
    顶一下
    (0)
    0%
    踩一下
    (0)
    0%
    ------分隔线------