📄 keyevent.java
字号:
setNewModifiers(); } else if ((getModifiers() == 0) && (getModifiersEx() != 0)) { setOldModifiers(); } }*/ /** * Constructs a <code>KeyEvent</code> object. * <p>Note that passing in an invalid <code>id</code> results in * unspecified behavior. * * @param source the <code>Component</code> that originated the event * @param id an integer identifying the type of event * @param when a long integer that specifies the time the event * occurred * @param modifiers the modifier keys down during event (shift, ctrl, * alt, meta) * Either extended _DOWN_MASK or old _MASK modifiers * should be used, but both models should not be mixed * in one event. Use of the extended modifiers is * preferred. * @param keyCode the integer code for an actual key, or VK_UNDEFINED * (for a key-typed event) * @param keyChar the Unicode character generated by this event, or * CHAR_UNDEFINED (for key-pressed and key-released * events which do not map to a valid Unicode character) * @exception IllegalArgumentException if <code>id</code> is * <code>KEY_TYPED</code> and <code>keyChar</code> is * <code>CHAR_UNDEFINED</code>; or if <code>id</code> is * <code>KEY_TYPED</code> and <code>keyCode</code> is not * <code>VK_UNDEFINED</code> */ public KeyEvent(Component source, int id, long when, int modifiers, int keyCode, char keyChar) { super(source, id, when, modifiers); if (id == KEY_TYPED) { if (keyChar == CHAR_UNDEFINED) { throw new IllegalArgumentException("invalid keyChar"); } if (keyCode != VK_UNDEFINED) { throw new IllegalArgumentException("invalid keyCode"); } /* if (keyLocation != KEY_LOCATION_UNKNOWN) { throw new IllegalArgumentException("invalid keyLocation"); } */ } this.keyCode = keyCode; this.keyChar = keyChar; if ((getModifiers() != 0) && (getModifiersEx() == 0)) { setNewModifiers(); } else if ((getModifiers() == 0) && (getModifiersEx() != 0)) { setOldModifiers(); } } /** * Returns the integer keyCode associated with the key in this event. * * @return the integer code for an actual key on the keyboard. * (For <code>KEY_TYPED</code> events, the keyCode is * <code>VK_UNDEFINED</code>.) */ public int getKeyCode() { return keyCode; } /** * Set the keyCode value to indicate a physical key. * * @param keyCode an integer corresponding to an actual key on the keyboard. */ public void setKeyCode(int keyCode) { this.keyCode = keyCode; } /** * Returns the character associated with the key in this event. * For example, the key-typed event for shift + "a" returns the * value for "A". * * @return the Unicode character defined for this key event. * If no valid Unicode character exists for this key event, * keyChar is <code>CHAR_UNDEFINED</code>. */ public char getKeyChar() { return keyChar; } /** * Set the keyChar value to indicate a logical character. * * @param keyChar a char corresponding to to the combination of keystrokes * that make up this event. */ public void setKeyChar(char keyChar) { this.keyChar = keyChar; } /** * Returns the location of the key that originated this key event. * * Some keys occur more than once on a keyboard, e.g. the left and * right shift keys. Additionally, some keys occur on the numeric * keypad. This provides a way of distinguishing such keys. * * @return the location of the key that was pressed or released. * Always returns <code>KEY_LOCATION_UNKNOWN</code> for * <code>KEY_TYPED</code> events. * @since 1.4 *//* public int getKeyLocation() { return keyLocation; }*/ /** * Returns a String describing the keyCode, such as "HOME", "F1" or "A". * These strings can be localized by changing the awt.properties file. * * @return a string containing a text description for a physical key, * identified by its keyCode */ public static String getKeyText(int keyCode) { if (keyCode >= VK_0 && keyCode <= VK_9 || keyCode >= VK_A && keyCode <= VK_Z) { return String.valueOf((char) keyCode); } // Check for other ASCII keyCodes. int index = ",./;=[\\]".indexOf(keyCode); if (index >= 0) { return String.valueOf((char) keyCode); } switch (keyCode) { case VK_ENTER: return Toolkit.getProperty("AWT.enter", "Enter"); case VK_BACK_SPACE: return Toolkit.getProperty("AWT.backSpace", "Backspace"); case VK_TAB: return Toolkit.getProperty("AWT.tab", "Tab"); case VK_CANCEL: return Toolkit.getProperty("AWT.cancel", "Cancel"); case VK_CLEAR: return Toolkit.getProperty("AWT.clear", "Clear"); case VK_SHIFT: return Toolkit.getProperty("AWT.shift", "Shift"); case VK_CONTROL: return Toolkit.getProperty("AWT.control", "Control"); case VK_ALT: return Toolkit.getProperty("AWT.alt", "Alt"); case VK_PAUSE: return Toolkit.getProperty("AWT.pause", "Pause"); case VK_CAPS_LOCK: return Toolkit.getProperty("AWT.capsLock", "Caps Lock"); case VK_ESCAPE: return Toolkit.getProperty("AWT.escape", "Escape"); case VK_SPACE: return Toolkit.getProperty("AWT.space", "Space"); case VK_PAGE_UP: return Toolkit.getProperty("AWT.pgup", "Page Up"); case VK_PAGE_DOWN: return Toolkit.getProperty("AWT.pgdn", "Page Down"); case VK_END: return Toolkit.getProperty("AWT.end", "End"); case VK_HOME: return Toolkit.getProperty("AWT.home", "Home"); case VK_LEFT: return Toolkit.getProperty("AWT.left", "Left"); case VK_UP: return Toolkit.getProperty("AWT.up", "Up"); case VK_RIGHT: return Toolkit.getProperty("AWT.right", "Right"); case VK_DOWN: return Toolkit.getProperty("AWT.down", "Down"); // handled by ASCII value above: // comma, period, slash, 0-9, semicolon, equals, A-Z, // open_bracket, back_slash, close_bracket // numpad numeric keys handled below case VK_MULTIPLY: return Toolkit.getProperty("AWT.multiply", "NumPad *"); case VK_ADD: return Toolkit.getProperty("AWT.add", "NumPad +"); case VK_SEPARATER: return Toolkit.getProperty("AWT.separater", "NumPad ,"); //case VK_SEPARATOR: return Toolkit.getProperty("AWT.separator", "NumPad ,"); case VK_SUBTRACT: return Toolkit.getProperty("AWT.subtract", "NumPad -"); case VK_DECIMAL: return Toolkit.getProperty("AWT.decimal", "NumPad ."); case VK_DIVIDE: return Toolkit.getProperty("AWT.divide", "NumPad /"); case VK_DELETE: return Toolkit.getProperty("AWT.delete", "Delete"); case VK_NUM_LOCK: return Toolkit.getProperty("AWT.numLock", "Num Lock"); case VK_SCROLL_LOCK: return Toolkit.getProperty("AWT.scrollLock", "Scroll Lock"); case VK_F1: return Toolkit.getProperty("AWT.f1", "F1"); case VK_F2: return Toolkit.getProperty("AWT.f2", "F2"); case VK_F3: return Toolkit.getProperty("AWT.f3", "F3"); case VK_F4: return Toolkit.getProperty("AWT.f4", "F4"); case VK_F5: return Toolkit.getProperty("AWT.f5", "F5"); case VK_F6: return Toolkit.getProperty("AWT.f6", "F6"); case VK_F7: return Toolkit.getProperty("AWT.f7", "F7"); case VK_F8: return Toolkit.getProperty("AWT.f8", "F8"); case VK_F9: return Toolkit.getProperty("AWT.f9", "F9"); case VK_F10: return Toolkit.getProperty("AWT.f10", "F10"); case VK_F11: return Toolkit.getProperty("AWT.f11", "F11"); case VK_F12: return Toolkit.getProperty("AWT.f12", "F12"); case VK_F13: return Toolkit.getProperty("AWT.f13", "F13"); case VK_F14: return Toolkit.getProperty("AWT.f14", "F14"); case VK_F15: return Toolkit.getProperty("AWT.f15", "F15"); case VK_F16: return Toolkit.getProperty("AWT.f16", "F16"); case VK_F17: return Toolkit.getProperty("AWT.f17", "F17"); case VK_F18: return Toolkit.getProperty("AWT.f18", "F18"); case VK_F19: return Toolkit.getProperty("AWT.f19", "F19"); case VK_F20: return Toolkit.getProperty("AWT.f20", "F20"); case VK_F21: return Toolkit.getProperty("AWT.f21", "F21"); case VK_F22: return Toolkit.getProperty("AWT.f22", "F22"); case VK_F23: return Toolkit.getProperty("AWT.f23", "F23"); case VK_F24: return Toolkit.getProperty("AWT.f24", "F24"); case VK_PRINTSCREEN: return Toolkit.getProperty("AWT.printScreen", "Print Screen"); case VK_INSERT: return Toolkit.getProperty("AWT.insert", "Insert"); case VK_HELP: return Toolkit.getProperty("AWT.help", "Help"); case VK_META: return Toolkit.getProperty("AWT.meta", "Meta"); case VK_BACK_QUOTE: return Toolkit.getProperty("AWT.backQuote", "Back Quote"); case VK_QUOTE: return Toolkit.getProperty("AWT.quote", "Quote"); case VK_KP_UP: return Toolkit.getProperty("AWT.up", "Up"); case VK_KP_DOWN: return Toolkit.getProperty("AWT.down", "Down"); case VK_KP_LEFT: return Toolkit.getProperty("AWT.left", "Left"); case VK_KP_RIGHT: return Toolkit.getProperty("AWT.right", "Right"); case VK_DEAD_GRAVE: return Toolkit.getProperty("AWT.deadGrave", "Dead Grave"); case VK_DEAD_ACUTE: return Toolkit.getProperty("AWT.deadAcute", "Dead Acute"); case VK_DEAD_CIRCUMFLEX: return Toolkit.getProperty("AWT.deadCircumflex", "Dead Circumflex"); case VK_DEAD_TILDE: return Toolkit.getProperty("AWT.deadTilde", "Dead Tilde"); case VK_DEAD_MACRON: return Toolkit.getProperty("AWT.deadMacron", "Dead Macron"); case VK_DEAD_BREVE: return Toolkit.getProperty("AWT.deadBreve", "Dead Breve"); case VK_DEAD_ABOVEDOT: return Toolkit.getProperty("AWT.deadAboveDot", "Dead Above Dot"); case VK_DEAD_DIAERESIS: return Toolkit.getProperty("AWT.deadDiaeresis", "Dead Diaeresis"); case VK_DEAD_ABOVERING: return Toolkit.getProperty("AWT.deadAboveRing", "Dead Above Ring"); case VK_DEAD_DOUBLEACUTE: return Toolkit.getProperty("AWT.deadDoubleAcute", "Dead Double Acute"); case VK_DEAD_CARON: return Toolkit.getProperty("AWT.deadCaron", "Dead Caron"); case VK_DEAD_CEDILLA: return Toolkit.getProperty("AWT.deadCedilla", "Dead Cedilla"); case VK_DEAD_OGONEK: return Toolkit.getProperty("AWT.deadOgonek", "Dead Ogonek"); case VK_DEAD_IOTA: return Toolkit.getProperty("AWT.deadIota", "Dead Iota"); case VK_DEAD_VOICED_SOUND: return Toolkit.getProperty("AWT.deadVoicedSound", "Dead Voiced Sound"); case VK_DEAD_SEMIVOICED_SOUND: return Toolkit.getProperty("AWT.deadSemivoicedSound", "Dead Semivoiced Sound"); case VK_AMPERSAND: return Toolkit.getProperty("AWT.ampersand", "Ampersand"); case VK_ASTERISK: return Toolkit.getProperty("AWT.asterisk", "Asterisk"); case VK_QUOTEDBL: return Toolkit.getProperty("AWT.quoteDbl", "Double Quote"); case VK_LESS: return Toolkit.getProperty("AWT.Less", "Less"); case VK_GREATER: return Toolkit.getProperty("AWT.greater", "Greater"); case VK_BRACELEFT: return Toolkit.getProperty("AWT.braceLeft", "Left Brace"); case VK_BRACERIGHT: return Toolkit.getProperty("AWT.braceRight", "Right Brace"); case VK_AT: return Toolkit.getProperty("AWT.at", "At"); case VK_COLON: return Toolkit.getProperty("AWT.colon", "Colon");
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -