java.awt.event.KeyEvent#getKeyChar()源码实例Demo

下面列出了java.awt.event.KeyEvent#getKeyChar() 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: hottub   文件: deadKeyMacOSX.java
@Override
public void keyTyped(KeyEvent e) {
    int keyCode = e.getKeyCode();
    char keyChar = e.getKeyChar();

    if (state == 3) {
        if (keyCode != 0) {
            throw new RuntimeException("Key code should be undefined.");
        }
        if (keyChar != 0xE1) {
            throw new RuntimeException("A char does not have ACCUTE accent");
        }
    } else {
        throw new RuntimeException("Wron number of keyTyped events.");
    }
}
 
源代码2 项目: jmonkeyengine   文件: AWTKeyInput.java
private void onKeyEvent(KeyEvent keyEvent, boolean pressed) {

        int code = convertKeyCode(keyEvent.getID());
        char keyChar = keyEvent.getKeyChar();

        final KeyInputEvent event = new KeyInputEvent(code, keyChar, pressed, false);
        event.setTime(getInputTimeNanos());

        EXECUTOR.addToExecute(new Runnable() {

          @Override
          public void run() {
            keyInputEvents.add(event);
          }
          
        });
    }
 
@Override
public void keyTyped(KeyEvent e) {
    int keyCode = e.getKeyCode();
    char keyChar = e.getKeyChar();

    if (state == 2) {
        if (keyCode != 0) {
            throw new RuntimeException("Key code should be undefined.");
        }
        if (keyChar != 0xE1) {
            throw new RuntimeException("A char does not have ACCUTE accent");
        }
        state++;
    } else {
        throw new RuntimeException("Wron number of keyTyped events.");
    }
}
 
源代码4 项目: nb-springboot   文件: JavaTypeCompletionItem.java
@Override
public void processKeyEvent(KeyEvent evt) {
    if (evt.getID() == KeyEvent.KEY_TYPED && evt.getKeyChar() == '.' && elementKind == ElementKind.PACKAGE) {
        logger.log(Level.FINER, "Accepting package ''{0}'' and continuing completion", name);
        Completion.get().hideDocumentation();
        Completion.get().hideCompletion();
        JTextComponent tc = (JTextComponent) evt.getSource();
        BaseDocument doc = (BaseDocument) tc.getDocument();
        doc.runAtomic(new Runnable() {
            @Override
            public void run() {
                try {
                    doc.remove(dotOffset, caretOffset - dotOffset);
                    doc.insertString(dotOffset, name.concat("."), null);
                } catch (BadLocationException ble) {
                    //ignore
                }
            }
        });
        Completion.get().showCompletion();
        evt.consume();
    }
    // detect if Ctrl + Enter is pressed
    overwrite = evt.getKeyCode() == KeyEvent.VK_ENTER && (evt.getModifiers() & KeyEvent.CTRL_MASK) != 0;
}
 
源代码5 项目: binnavi   文件: GenericCommentsTableModel.java
private IComment handleRegularKeyInComment(IComment comment, CodeDisplayCoordinate coordinate,
    KeyEvent event) {
  int line = coordinate.getLine();
  int field = coordinate.getFieldIndex();
  int commentIndex = lineAndIndexToCommentIndex(comment, line, field);
  if (commentIndex >= 0) {
    comment = insertStringIntoComment(comment, line, field, "" + event.getKeyChar());
  } else {
    String lineString = comment.getCommentLine(coordinate.getLine());
    String paddingAndKey =
        CodeDisplay.padRight("", coordinate.getFieldIndex() - lineString.length())
        + event.getKeyChar();
    comment = insertStringIntoComment(comment, coordinate.getLine(), lineString.length(),
        paddingAndKey);
  }
  return comment;
}
 
源代码6 项目: hottub   文件: DeadKeyMacOSXInputText.java
@Override
public void keyTyped(KeyEvent e) {
    int keyCode = e.getKeyCode();
    char keyChar = e.getKeyChar();

    if (state == 2) {
        if (keyCode != 0) {
            throw new RuntimeException("Key code should be undefined.");
        }
        if (keyChar != 0xE1) {
            throw new RuntimeException("A char does not have ACCUTE accent");
        }
        state++;
    } else {
        throw new RuntimeException("Wron number of keyTyped events.");
    }
}
 
源代码7 项目: openjdk-8-source   文件: DeadKeyMacOSXInputText.java
@Override
public void keyTyped(KeyEvent e) {
    int keyCode = e.getKeyCode();
    char keyChar = e.getKeyChar();

    if (state == 2) {
        if (keyCode != 0) {
            throw new RuntimeException("Key code should be undefined.");
        }
        if (keyChar != 0xE1) {
            throw new RuntimeException("A char does not have ACCUTE accent");
        }
        state++;
    } else {
        throw new RuntimeException("Wron number of keyTyped events.");
    }
}
 
源代码8 项目: openjdk-jdk9   文件: DeadKeyMacOSXInputText.java
@Override
public void keyTyped(KeyEvent e) {
    int keyCode = e.getKeyCode();
    char keyChar = e.getKeyChar();

    if (state == 2) {
        if (keyCode != 0) {
            throw new RuntimeException("Key code should be undefined.");
        }
        if (keyChar != 0xE1) {
            throw new RuntimeException("A char does not have ACCUTE accent");
        }
        state++;
    } else {
        throw new RuntimeException("Wron number of keyTyped events.");
    }
}
 
源代码9 项目: netbeans   文件: CompletionSupport.java
public void processKeyEvent (KeyEvent evt) {
    if (evt.getID() == KeyEvent.KEY_TYPED) {
        char c = evt.getKeyChar();
        JTextComponent component = (JTextComponent)evt.getSource();
        if (confirmChars == null) {
            confirmChars = getConfirmChars(component);
        }
        if (confirmChars.indexOf(c) != -1) {
            if (c != '.') {
                Completion.get().hideDocumentation();
                Completion.get().hideCompletion();
            }
            NbEditorDocument doc = (NbEditorDocument) component.getDocument ();
            try {
                defaultAction(component);
                doc.insertString(processKeyEventOffset, Character.toString(c), null);
            } catch (BadLocationException e) {
            }
            if (c == '.')
                Completion.get().showCompletion();
            evt.consume();
        } // if
    } // if
}
 
源代码10 项目: TencentKona-8   文件: DeadKeyMacOSXInputText.java
@Override
public void keyTyped(KeyEvent e) {
    int keyCode = e.getKeyCode();
    char keyChar = e.getKeyChar();

    if (state == 2) {
        if (keyCode != 0) {
            throw new RuntimeException("Key code should be undefined.");
        }
        if (keyChar != 0xE1) {
            throw new RuntimeException("A char does not have ACCUTE accent");
        }
        state++;
    } else {
        throw new RuntimeException("Wron number of keyTyped events.");
    }
}
 
源代码11 项目: Spark   文件: TelephoneTextField.java
public void keyTyped(KeyEvent keyEvent) {
    if(keyEvent.getKeyChar() == KeyEvent.VK_ENTER){
        if(pad != null){
            pad.hide();
        }
        return;
    }

    if(pad != null){
        pad.numberEntered(keyEvent.getKeyChar());
    }
}
 
源代码12 项目: evosql   文件: DatabaseManagerSwing.java
public void keyTyped(KeyEvent k) {

        if (k.getKeyChar() == '\n' && k.isControlDown()) {
            k.consume();
            executeCurrentSQL();
        }
    }
 
源代码13 项目: evosql   文件: DatabaseManager.java
public void keyTyped(KeyEvent k) {

        if (k.getKeyChar() == '\n' && k.isControlDown()) {
            k.consume();
            execute();
        }
    }
 
源代码14 项目: netbeans   文件: FSCompletion.java
@Override
public void processKeyEvent(KeyEvent evt) {
    if (evt.getID() == KeyEvent.KEY_TYPED) {
        String strToAdd = "/";
        if (evt.getKeyChar() == '/') {
            doSubstitute((JTextComponent) evt.getSource(), strToAdd, strToAdd.length() - 1);
            evt.consume();
        }
    }
}
 
源代码15 项目: ganttproject   文件: GPTreeTableBase.java
@Override
protected boolean processKeyBinding(KeyStroke ks, KeyEvent e, int condition, boolean pressed) {
  if (isStartEditingEvent(e, false)) {
    // It is an action which is supposed to start cell editing, but it is not
    // typing any character. Such actions are F2, Insert and Ctrl+T in the Gantt chart.
    // We want to select all existing text but do not clear it.
    putClientProperty("GPTreeTableBase.selectAll", true);
    putClientProperty("GPTreeTableBase.clearText", false);
  } else {
    putClientProperty("GPTreeTableBase.selectAll", false);
    putClientProperty("GPTreeTableBase.clearText", true);
    // Otherwise let's check if it is a character and ctrl/meta is not pressed.
    if (e.getKeyChar() != KeyEvent.CHAR_UNDEFINED && !e.isMetaDown() && !e.isControlDown()) {
      // In this case we want to clear existing text.
      putClientProperty("GPTreeTableBase.clearText", true);
    } else {
      putClientProperty("GPTreeTableBase.clearText", false);
    }
  }
  if (e.getKeyChar() == '>' && ((ks.getModifiers() | KeyEvent.CTRL_DOWN_MASK) > 0)) {
    return super.processKeyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_GREATER, ks.getModifiers()), e, condition, pressed);
  }
  if (e.getKeyChar() == '<' && ((ks.getModifiers() | KeyEvent.CTRL_DOWN_MASK) > 0)) {
    return super.processKeyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_LESS, ks.getModifiers()), e, condition, pressed);
  }
  // See also overridden method editCellAt.
  return super.processKeyBinding(ks, e, condition, pressed);
}
 
源代码16 项目: salty-engine   文件: NativeDisplayKeyListener.java
@Override
public void keyPressed(final KeyEvent e) {

    if (keyboardHandler != null) {
        keyboardHandler.keyPressed(e);
    }

    currentKey = e.getKeyChar();

    if (e.getKeyCode() == KeyEvent.VK_W || e.getKeyCode() == KeyEvent.VK_UP) {

        inputUp = true;
    }
    if (e.getKeyCode() == KeyEvent.VK_S || e.getKeyCode() == KeyEvent.VK_DOWN) {

        inputDown = true;
    }
    if (e.getKeyCode() == KeyEvent.VK_A || e.getKeyCode() == KeyEvent.VK_LEFT) {

        inputLeft = true;
    }
    if (e.getKeyCode() == KeyEvent.VK_D || e.getKeyCode() == KeyEvent.VK_RIGHT) {

        inputRight = true;
    }

    if (SceneManager.getCurrentScene().getUI() != null) {
        SceneManager.getCurrentScene().getUI().keyPressed(e);
    }

    Input.keyboardInput.handleKeyPressed(e);
    updateInputStates();
    Input.lastInput = e;
    Input.getKeyboardHandlers().forEach(keyboardInputHandler -> keyboardInputHandler.keyPressed(e));
}
 
源代码17 项目: groovy   文件: FindReplaceUtility.java
public void keyTyped(KeyEvent ke) {
    if (ke.getKeyChar() == KeyEvent.VK_ENTER) {
        FIND_BUTTON.doClick();
    }
}
 
源代码18 项目: netbeans   文件: ConfigurationsComboModel.java
@Override
public void keyPressed(KeyEvent ke) {
    if (ke.getKeyChar() == KeyEvent.VK_ENTER || ke.getKeyCode() == KeyEvent.VK_ESCAPE) {
        confirm(ke);
    }
}
 
源代码19 项目: openjdk-jdk8u   文件: CodePointInputMethod.java
/**
 * This is the input method's main routine.  The composed text is stored
 * in buffer.
 */
public void dispatchEvent(AWTEvent event) {
    // This input method handles KeyEvent only.
    if (!(event instanceof KeyEvent)) {
        return;
    }

    KeyEvent e = (KeyEvent) event;
    int eventID = event.getID();
    boolean notInCompositionMode = buffer.length() == 0;

    if (eventID == KeyEvent.KEY_PRESSED) {
        // If we are not in composition mode, pass through
        if (notInCompositionMode) {
            return;
        }

        switch (e.getKeyCode()) {
            case KeyEvent.VK_LEFT:
                moveCaretLeft();
                break;
            case KeyEvent.VK_RIGHT:
                moveCaretRight();
                break;
        }
    } else if (eventID == KeyEvent.KEY_TYPED) {
        char c = e.getKeyChar();

        // If we are not in composition mode, wait a back slash
        if (notInCompositionMode) {
            // If the type character is not a back slash, pass through
            if (c != '\\') {
                return;
            }

            startComposition();     // Enter to composition mode
        } else {
            switch (c) {
                case ' ':       // Exit from composition mode
                    finishComposition();
                    break;
                case '\u007f':  // Delete
                    deleteCharacter();
                    break;
                case '\b':      // BackSpace
                    deletePreviousCharacter();
                    break;
                case '\u001b':  // Escape
                    cancelComposition();
                    break;
                case '\n':      // Return
                case '\t':      // Tab
                    sendCommittedText();
                    break;
                default:
                    composeUnicodeEscape(c);
                    break;
            }
        }
    } else {  // KeyEvent.KEY_RELEASED
        // If we are not in composition mode, pass through
        if (notInCompositionMode) {
            return;
        }
    }

    e.consume();
}
 
源代码20 项目: binnavi   文件: InstructionCommentsDataModel.java
@Override
/**
 * Please read the comment in the base class regarding this method - it is somewhat counter-
 * intuitive for people used to the Swing keyboard handling model.
 */
public void keyPressedOrTyped(CodeDisplayCoordinate coordinate, KeyEvent event) {
  if (!isEditable(coordinate)) {
    return;
  }

  // Are there any existing comments?
  INaviInstruction instruction = internalData.get(coordinate.getRow()).first();
  Pair<IComment, Pair<Integer, Integer>> commentAndIndex =
      getCommentAndIndexAtCoordinate(coordinate);
  IComment comment = commentAndIndex.first();
  Pair<Integer, Integer> indices = commentAndIndex.second();

  switch (event.getKeyCode()) {
    // VK_UNDEFINED implies that this was a KEY_TYPED event.
    case KeyEvent.VK_UNDEFINED:
      switch (event.getKeyChar()) {
        case java.awt.Event.ENTER:
          handleRegularKeyInComment(instruction, comment, indices, coordinate, event);
          coordinate.setLine(coordinate.getLine() + 1);
          coordinate.setFieldIndex(0);
          break;
        case java.awt.Event.BACK_SPACE:
          handleBackspaceKeyInComment(instruction, comment, indices, coordinate);
          break;
        case java.awt.Event.DELETE:
          handleDeleteKeyInComment(instruction, comment, indices, coordinate);
          break;
        default:
          handleRegularKeyInComment(instruction, comment, indices, coordinate, event);
          coordinate.setFieldIndex(coordinate.getFieldIndex() + 1);
          break;
      }
      break;
    case KeyEvent.VK_HOME:
      coordinate.setFieldIndex(0);
      break;
    case KeyEvent.VK_END:
      coordinate.setFieldIndex(indices.second() - indices.first());
      break;
    default:
      Logger.warning("Default case in keyTyped hit, investigate why.");
      break;
  }
}