我正在使用 SWT 4.4.2 (win32) 为简单的 mp3 播放器应用程序构建图形用户界面。
在 SWT 树中,我展示了一些要播放的文件夹和文件。
现在我想通过单击菜单项并按ALT+ARROW_UP和来更改正在播放的文件的音量ALT+ARROW_DOWN。
所以我有这些组件:
tree = new Tree(shell, SWT.BORDER | SWT.FULL_SELECTION | SWT.SINGLE | SWT.V_SCROLL);
tree.setLinesVisible(true);
tree.setLocation(10, 10);
tree.setSize(240, 440);
audioLouderMenu = new MenuItem(audioVolumeMenu, SWT.PUSH);
audioLouderMenu.setAccelerator(SWT.ALT | SWT.ARROW_UP);
audioLouderMenu.setText("Louder");
audioLouderMenu.addListener(SWT.Selection, audioVolumeMenuHandler);
audioQuieterMenu = new MenuItem(audioVolumeMenu, SWT.PUSH);
audioQuieterMenu.setAccelerator(SWT.ALT | SWT.ARROW_DOWN);
audioQuieterMenu.setText("Quieter");
audioQuieterMenu.addListener(SWT.Selection, audioVolumeMenuHandler);
问题是如果树视图具有焦点并且我按下ALT+ARROW_DOWN然后将选择树中的另一个条目并且不会触发菜单项的快捷方式。
这是 SWT 的一个错误,我该如何解决这个问题?我知道我可以定义另一个快捷方式,但我认为它也应该可以使用ALT+ARROW_UP/DOWN......