GEF内部本身是支持键盘操作图元的,只是比较的麻烦,不直观——选中图元后,按.(英文句号)键,光标变为十字箭头型,再按上下左右方向键即可移动图元了;如果连按两下.(英文句号)键,光标变为水平、垂直箭头型,按方向键即可改变图元的大小。
如果想要修改GEF的行为,改为选中图元后,直接按方向键移动图元,则要用自己实现的MyGraphicalViewerKeyHandler类替换掉GEF中的GraphicalViewerKeyHandler类。
参考GEF中的GraphicalViewerKeyHandler类,你想怎么修改都随你的想法了。
其实就是
1.照猫画虎
照着GraphicalViewerKeyHandler类实现你自己的MyGraphicalViewerKeyHandler类。
2.偷梁换柱
如果想要修改GEF的行为,改为选中图元后,直接按方向键移动图元,则要用自己实现的MyGraphicalViewerKeyHandler类替换掉GEF中的GraphicalViewerKeyHandler类。
参考GEF中的GraphicalViewerKeyHandler类,你想怎么修改都随你的想法了。
其实就是
1.照猫画虎
照着GraphicalViewerKeyHandler类实现你自己的MyGraphicalViewerKeyHandler类。
2.偷梁换柱
用这个修改后的类替换掉原来的类,在你的GraphicalEditor类里面的configureGraphicalViewer()函数里面,有一步是 viewer.setKeyHandler(),在这个函数调用的参数里面填入你的MyGraphicalViewerKeyHandler,即可在你的 GEF应用中接上它。