eclipse rcp: связывание ключей с toolitem - PullRequest
0 голосов
/ 20 ноября 2011

У меня есть панель инструментов в моем приложении eclipse rcp, она содержит три кнопки,

  1. кнопка home: перейти на домашнюю страницу
  2. кнопка назад: перейти на предыдущую страницу
  3. кнопка пересылки: перейти на следующую страницу

код их создания:

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 с кнопкой возврата домой, возможно ли это?как сделать?

1 Ответ

2 голосов
/ 21 ноября 2011

В приложении SWT вы можете использовать мнемонику для имитации нажатия кнопок.

Но если вы имеете в виду приложение RCP с ToolItems на панели инструментов, вам нужно использовать командную среду для использования сочетаний клавиш.

Вы определяете команду, а затем используете дескриптор для реализации поведения.Затем ваш ToolItem и связывание клавиш ALT + H указывают на одну и ту же команду.

См. Точки расширения Workbench с использованием команд для получения дополнительной информации.

...