【问题标题】:JTextField, removing end charactersJTextField,删除结束字符
【发布时间】:2013-07-13 21:30:50
【问题描述】:

是否有可以从JTextField 中删除最后一个字符的内置函数,或者是否可以将字符串设置为删除最后一个字符的新字符串?

JTextField textfield = new JTextField(sometext);

// What I'm looking for
textfield.removeLastCharacter();

// What I'm using
char[] text = textfield.getText().toCharArray();
String string = "";
for (int i = 0; i < text.length - 1; i++) string += text[i];
textfield.setText(string);

【问题讨论】:

  • 我正在尝试获得“返回”功能不明白您为什么/到底要做什么:单击按钮时删除 a) 最后一个输入 b ) 最后一个字符 c) 最后一个字符,如果它是数字 d) .. 请澄清,答案取决于您的确切要求,您的工作要完整地描述它:-)

标签: java string jtextfield


【解决方案1】:

随便制作:

textField.setText(""+textField.getText().substring(0, textField.getText ().length - 1);

【讨论】:

  • 赞成但使用 '""+' 是一种丑陋的黑客攻击,尤其是当 + 的右手无论如何都返回一个字符串时。
  • 你在哪里看到 ' ' ?是的,我忘了它无论如何都会返回一个字符串^^但是那2个字节..:D
【解决方案2】:
Document doc = textField.getDocument();
doc.remove(...);

您还需要获取文档的长度,以便知道要删除哪个字符。查看 Document API 以了解适当的方法。

【讨论】:

    【解决方案3】:

    这样做。它适用于java程序。 textField

    使用您的文本字段名称
    textField.setText(textField.getText().substring(0, textField.getText ().length() - 1));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-05
      • 1970-01-01
      • 1970-01-01
      • 2010-11-27
      相关资源
      最近更新 更多