деактивировать мнемонику для JButton

Мне нужна помощь, чтобы деактивировать мнемонику для JButton. На самом деле я использую сторонний API, для которого они установили мнемонику как «Alt C». Итак, я хочу удалить эту мнемонику и не хочу ничего устанавливать (т.е. хочу удалить мнемонику) для этого compButton.

    // Alt + 'C' selects the comp.
     compButton.setMnemonic(KeyEvent.VK_C);

person mgr    schedule 25.03.2014    source источник


Ответы (1)


Как насчет использования compButton.setMnemonic(0);

изменить:

Я видел javax/swing/AbstractButton.java:

/**
 * Returns key bindings associated with this object
 *
 * @return the key bindings, if supported, of the object;
 * otherwise, null
 * @see AccessibleKeyBinding
 * @since 1.4
 */
public AccessibleKeyBinding getAccessibleKeyBinding() {
    int mnemonic = AbstractButton.this.getMnemonic();
    if (mnemonic == 0) {
        return null;
    }
    return new ButtonKeyBinding(mnemonic);
}

Поэтому compButton.setMnemonic(0); выглядит даже лучше, чем compButton.setMnemonic(-1);.

person aterai    schedule 25.03.2014
comment
0 фактически определен для KeyEvent. Я бы предложил использовать отрицательное значение, если вы хотите использовать этот подход. - person user1803551; 25.03.2014