1

我正在使用 smartGwt 3.0,我有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);              
            }
        });
4

1 回答 1

1

将此侦听器添加到您的列表网格

listgrid.addShowContextMenuHandler(new ShowContextMenuHandler() {

    @Override
    public void onShowContextMenu(ShowContextMenuEvent event) {         
        event.cancel();
    }
});
于 2014-10-15T07:06:12.513 回答