代码之家  ›  专栏  ›  技术社区  ›  jan

如何使用<kbd>绘制像兄弟一样花哨的键盘输入?

  •  0
  • jan  · 技术社区  · 12 年前

    我想显示任意快捷方式,就像stack*所能显示的那样,即。 + 1. (参见 here ). 我如何在java中做到最好?

    1 回复  |  直到 9 年前
        1
  •  0
  •   jan    12 年前

    我没有找到一个真正花哨的解决方案,但至少Substance的菜单渲染逻辑考虑到了本地用户:

        // get Accelerator text
        // KeyStroke accelerator
        String acceleratorText = "";
        if (accelerator != null) {
            int modifiers = accelerator.getModifiers();
            if (modifiers > 0) {
                acceleratorText = KeyEvent.getKeyModifiersText(modifiers);
                acceleratorText += UIManager.getString("MenuItem.acceleratorDelimiter");
            }
    
            int keyCode = accelerator.getKeyCode();
            if (keyCode != 0) {
                acceleratorText += KeyEvent.getKeyText(keyCode);
            } else {
                acceleratorText += accelerator.getKeyChar();
            }
        }
        return acceleratorText;
    

    现在我只需要一个漂亮的钥匙盒。。。