我的eclipse rcp应用程序中有一个工具栏,它包含三个按钮,
代码创建它们:
ToolBar tb = new ToolBar(toolBarComp, SWT.NONE);
fd = new FormData();
fd.right = new FormAttachment(100, -10);
tb.setLayoutData(fd);
homeBtn = new ToolItem(tb, SWT.PUSH);
homeBtn.setImage(ResourceManager.getImage(ResourceClass.class, "home.png"));
homeBtn.setToolTipText("返回主页");
backBtn = new ToolItem(tb, SWT.PUSH);
backBtn.setImage(ResourceManager.getImage(ResourceClass.class, "back.png"));
backBtn.setToolTipText("返回至上一页");
backBtn.setEnabled(false);
backBtn.addSelectionListener(new SelectionAdapter(){
public void widgetSelected(SelectionEvent e) {
CompositePageRender.this.controler.goBack();
}
});
forwardBtn = new ToolItem(tb, SWT.PUSH);
forwardBtn.setImage(ResourceManager.getImage(ResourceClass.class, "forward.png"));
forwardBtn.setToolTipText("前进至下一页");
forwardBtn.setEnabled(false);
forwardBtn.addSelectionListener(new SelectionAdapter(){
public void widgetSelected(SelectionEvent e) {
CompositePageRender.this.controler.goFroward();
}
});
我想用主页按钮绑定ALT + H,这可能吗?怎么做?
答案 0 :(得分:2)
在SWT应用程序中,您可以使用助记符来模拟按下按钮。
但是,如果您指的是工具栏中带有ToolItems的RCP应用程序,则需要使用命令框架来使用键绑定。
您定义一个命令,然后使用句柄来实现该行为。然后你有你的ToolItem和keybinding ALT + H 指向同一个命令。
有关详细信息,请参阅Workbench extension points using Commands。