簡體   English   中英

如何禁用左右箭頭鍵以在SWT列表中導航?

[英]How to disable left and right arrow keys for navigation in SWT List?

SWT List讓兩個leftup箭頭鍵上去列表項和雙方rightdown箭頭鍵在默認情況下下井列表項。 但是我想使用leftright箭頭鍵進行其他提議。 我怎樣才能去除leftright箭頭鍵監聽器是在SWT List默認? 然后替換我自己的。 這是我要使用的代碼:

Listener listListener = new Listener() {
        public void handleEvent(Event e) {
            int RowIndex = listData.getSelectionIndex();

            if(RowIndex == 0){
                if (e.keyCode == SWT.ARROW_RIGHT) { //right arrow
                    //do something
                }else if (e.keyCode == SWT.ARROW_LEFT) { //left arrow
                    //do something
                }
             }
         }
    };
    list.addListener(SWT.KeyDown, listListener);

謝謝!

您可以通過將doit標志設置為false來抑制按鍵的默認行為 ,如下所示:

if( event.keyCode == SWT.ARROW_RIGHT ) {
  // do something    
  event.doit = false;
}

箭頭鍵的默認行為很可能取決於平台。 Windows的行為與您描述的相同,但其他平台的行為可能有所不同。 無論密鑰是否具有默認行為,將doit標志設置為false都將起作用。

我寧願不重寫平台行為,因為您的應用程序的行為將與平台的一般用法不一致。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM