【问题标题】:How to show contextMenu just on records of a listGrid?如何仅在 listGrid 的记录上显示 contextMenu?
【发布时间】:2014-10-15 15:15:19
【问题描述】:

我正在使用 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);              
            }
        });

【问题讨论】:

  • 我已经添加了代码。

标签: contextmenu smartgwt listgrid


【解决方案1】:

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

listgrid.addShowContextMenuHandler(new ShowContextMenuHandler() {

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-11
    • 1970-01-01
    • 2016-02-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多