Я просматриваю Stackoverflow в течение часа и просто не могу найти ответ, это именно то, что мне нужно.
В настоящее время мы используем CellTable для отображения некоторых данных.Первая строка таблицы - это, конечно же, заголовок.При щелчке правой кнопкой мыши в любом месте этой таблицы открывается контекстное меню.Мой клиент теперь хочет иметь несколько дополнительных опций в этом контекстном меню, но только при нажатии на заголовок.В настоящее время я пытаюсь выяснить, происходит ли щелчок правой кнопкой мыши из заголовка или тела таблицы.
if ( contextMenu == null )
{
contextMenu = new ContextMenu();
table.sinkEvents(Event.ONCONTEXTMENU);
table.addHandler(new ContextMenuHandler()
{
@Override
public void onContextMenu(ContextMenuEvent event)
{
//here I'd like to check if the clicked row index == 0 and display a different context menu
event.preventDefault();
event.stopPropagation();
contextMenu.setPopupPosition(event.getNativeEvent().getClientX(), event.getNativeEvent().getClientY());
contextMenu.setAutoHideEnabled(true);
contextMenu.show();
}
}, ContextMenuEvent.getType());
}