当前位置:编程学习 > JAVA >>

setEnabled(false)

org.eclipse.jface.action.Action中的setEnabled应该是灰色的,我调用为什么就是不显示?
类结构:
    XXX  extends Action implements ISelectionChangedListener{ } Action setEnabled --------------------编程问答-------------------- 发个截图吧?不知道你的意思 --------------------编程问答--------------------  

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后 还是灰掉的状态!
补充:Java ,  Eclipse
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,