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 に答える