2013-05-28 30 views
1

我正在使用smartGwt 3.0,我有一個listGrid的某些記錄,我想在單擊某條記錄時顯示contextMenu。我寫了代碼,一切正常。如何在listGrid的記錄上顯示contextMenu?

我的問題是,當我右鍵點擊我的listGrid(不在記錄)上下文菜單出現,我不希望發生這種情況。那麼我該怎麼做才能解決這個問題?

listGrid.addCellContextClickHandler(new CellContextClickHandler() { 
      public void onCellContextClick(final CellContextClickEvent rightClickEvent) 
      {             
       Menu menu = new Menu();    
       MenuItem hangupItem = new MenuItem("Hangup Call", "agent/hangup.png");    
       hangupItem.addClickHandler(new ClickHandler() {    
        public void onClick(MenuItemClickEvent event) 
        { 
         SC.confirm("Are you sure ? ", new BooleanCallback() { 
          public void execute(Boolean value) { 
           if (value != null && value) { 
            labelAnswer.setContents("OK..."); 
           } else { 
            labelAnswer.setContents("Cancel..."); 
           } 
          } 
         }); 
        } 
       }); 

       menu.addItem(hangupItem); 
       listGrid.setContextMenu(menu);    
      } 
     }); 
+0

帖子我已經添加了代碼的代碼... – RAS

+0

。 –

回答

1

這個監聽器添加到您的listgrid

listgrid.addShowContextMenuHandler(new ShowContextMenuHandler() { 

    @Override 
    public void onShowContextMenu(ShowContextMenuEvent event) {   
     event.cancel(); 
    } 
});