Java SWT:Accelerator快捷方式不适用于PopUp上下文菜单

时间:2018-10-13 10:01:32

标签: java eclipse swt keyboard-shortcuts acceleratorkey

我要向我的一个小部件(表格)中添加一个弹出菜单。它不起作用!如果仅在顶部菜单栏项上而不是在弹出上下文菜单项中使用工作加速器快捷方式,则只能达到这种目的。为什么?

这是我的代码,但是表位于另一个内部的Composite内部:

membersTable.setMenu(createMembersPopUpMenu(this));

private Menu createMembersPopUpMenu(Composite parent) {
    Menu popUpMenu = new Menu(parent);

    //Copy
    copyMemberItem = new MenuItem(popUpMenu, SWT.PUSH);
    copyMemberItem.setText("Copiar Miembro");
    copyMemberItem.setAccelerator(SWT.MOD1 + 'C');
    copyMemberItem.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            copyMember();
        }
    });

    //Paste
    pasteMemberItem = new MenuItem(popUpMenu, SWT.PUSH);
    pasteMemberItem.setText("Pegar Miembro");
    pasteMemberItem.setAccelerator(SWT.MOD1 + 'V');
    pasteMemberItem.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            pasteMember();
        }
    });

    return popUpMenu;
}

0 个答案:

没有答案