使用Java中的Textfield中的所有字母大写

时间:2010-05-20 14:45:44

标签: java swing text

是否可以将文本字段中的字母大写,因为用户在Java中键入它们?

E.g。用户输入“hello”,“HELLO”将显示在Textfield中。

(奇怪的要求,我也不喜欢这个想法)。

6 个答案:

答案 0 :(得分:9)

Format JTextField's text to uppercase

使用DocumentFilter

How to Use Formatted Text Fields

使用MaskFormatter

答案 1 :(得分:1)

尝试

jTextField.addKeyListener(new KeyAdapter() {

  public void keyTyped(KeyEvent e) {
    char keyChar = e.getKeyChar();
    if (Character.isLowerCase(keyChar)) {
      e.setKeyChar(Character.toUpperCase(keyChar));
    }
  }

});

答案 2 :(得分:0)

ModifyListenergetText().toUpperCase()是您的朋友。

答案 3 :(得分:0)

这可能是一种效率低下的方法

但你可以在KeyTyped事件处理程序中有一个部分

if(event.getSource() == capitalTextArea) {
    String text = capitalTextArea.getText();
    if(Character.isLowerCase(text.charAt(text.length()-1))) {
        capitalTextArea.setText(text.toUpperCase());
    }
}

我可能会遇到语法上的错误,但这就是我要采取的方法

答案 4 :(得分:-1)

尝试

private void inText_UserIDKeyReleased( java.awt.event.KeyEvent evt ) {
    String UsrID=inText_UserID.getText().toUpperCase();
    inText_UserID.setText( UsrID );
}

答案 5 :(得分:-1)

帮助那些发现它有趣的朋友:如何使用TextField编写的字母大写。例如:传奇:

txtCadastrarNome =文本字段变量的名称。

txtCadastrarNomeKeyTyped =从键盘输入时的操作。

private void txtCadastrarNomeKeyTyped(java.awt.event.KeyEvent evt) { 
txtCadastrarNome.setText(txtCadastrarNomeCliente.getText().toUpperCase());
}