Во-первых, использование меню для этого может быть неправильным подходом. JSpinner
кажется более подходящим. Однако, чтобы сделать это с JMenuItem
, вы можете создать подкласс MenuItemUI
используемого вами LookAndFeel
и переопределить метод doClick(...)
, чтобы clearSelectionPath()
не вызывался, что закрывает меню, когда элемент щелкают.
Например, если вы используете мотив LookAndFeel
, вы можете сделать это:
menuItem.setUI(new MotifMenuItemUI() {
@Override
protected void doClick(MenuSelectionManager msm) {
menuItem.doClick(0);
}
});
Сам я никогда не пробовал, но думаю, что это сработает.