Как отобразить всплывающее меню щелчком левой кнопкой мыши в SWT?
Как отобразить всплывающее меню щелчком левой кнопки мыши? Я знаю, что по умолчанию для мыши правой кнопкой мыши. Но я хочу расширить (отобразить) меню просто путем обычного выбора кнопки. (обычным щелчком левой кнопки). Как всплывающее меню с помощью обычного щелчка правой кнопкой мыши выглядит следующим образом.
final Button btnNewgroup = new Button(compositeTextClient, SWT.NONE);
Menu menu = new Menu(btnNewgroup);
btnNewgroup.setMenu(menu);
MenuItem mntmNewItem = new MenuItem(menu, SWT.NONE);
mntmNewItem.setText("New Item");
MenuItem mntmNewItem2 = new MenuItem(menu, SWT.NONE);
mntmNewItem2.setText("New Item2");
1 ответ
Решение
Используйте слушателя выбора на кнопке:
btnNewgroup.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(final SelectionEvent e)
{
Rectangle bounds = btnNewgroup.getBounds();
Point point = btnNewgroup.getParent().toDisplay(bounds.x, bounds.y + bounds.height);
menu.setLocation(point);
menu.setVisible(true);
}
});