我想攔截按Ctrl + F4 在爲了關閉的TabPanel的標籤而不是我的應用程序運行在瀏覽器選項卡下面的代碼是作品,如果我單擊該選項卡面板第一內側:GXT:如何截取Ctrl-F4
Viewport v = new Viewport();
v.setLayout(new FitLayout());
v.add(panel);
v.addListener(Events.KeyDown, new Listener<BaseEvent>() {
public void handleEvent(BaseEvent be) {
KeyEvent ce = (KeyEvent)be;
if (ce.isControlKey()) {
if (ce.getKeyCode() == 115) {
System.out.println(ce.getKeyCode() + " Ctrl-f4");
ce.preventDefault();
ce.stopEvent();
}
}
};
});
有趣的是,如果焦點是的TabPanel(這顯然是位於視口內)外somewhre事件不會觸發。
任何想法?
現在趕上事件,停止它不行。我試過ne.stopPropagation(),ne.preventDefault()和event.cancel()。但沒有任何工作,即無論如何該選項卡被瀏覽器關閉。 – Simon