本文中涉及到的例子可以在以下URL下载。导入eclipse项目即可,我的环境的Eclipse4.3.1
http://download.csdn.net/detail/hoslay1/6925761
如果有问题请联系我QQ:195307039说明来意即可。
GEF中如果需要在某个控件获取焦点的时候动态刷新控件面板Palette,可以参考以下方式。
假设需要在选中某个控件的时候显示和选中控件相关的Item,而隐藏其它不需要的控件:
以下Editor代表外部的编辑器,EditPart代表GEF的EditPart
1.重载Editor的getPaletteRoot方法以创建默认的Palette条目
protected PaletteRoot getPaletteRoot() {
//创建根
PaletteRoot root= new PaletteRoot();
//创建工具组
PaletteGroup strandGroup = new PaletteGroup("标准");
root.add(strandGroup);
//创建一个gef默认提供的"selection"工具,默认被选择
ToolEntry tool = new SelectionToolEntry();
strandGroup.add(tool);
root.setDefaultEntry(tool);