摘要: 要添加快捷键,必须要扩展eclipse的org.eclipse.ui.command和org.eclipse.ui.binding这两个extension.然后Action和command关联,command又和一个binding关联起来,这样就间接的使action和binding有了关联.有人会问,这样做是不是太麻烦了,我直接把action和binding关联起来不就行了?最好是有个方法,比如action.setKeybind("Ctrl+A").其实eclipse这样做是涉及到设计模式的问题.如果用这种"简单"方法,你以后如果想要改actioon的快捷键就要去改action的源码了,是一种紧耦合的关系.而eclipse的处理方式削弱了这种耦合,你如果要改快捷键,改binding就可以了,你还可以让一个action在不同的perspective,甚至是不同的view中使用不同的快捷键.让一个action对应多个快捷键等等.
阅读全文