1

我想限制没有。可以放入的字符,JTextField因为在我的数据库中,我有这个具有 Sex,Status 的列(允许的字符数仅为 1)。

和中间首字母(允许的字符数仅为 2)。

这就是我的想法:

(对于性别,状态列)

String text = jTextField2.getText();
        int count = text.();
        if (count>1) {
            (delete the next character that will be input)
        }

(对于 MI 列)

String text = jTextField1.getText();
        int count = text.();
        if (count>2) {
            (delete the next character that will be input)
        }

这可能吗?有没有删除下一个字符的命令,所以没有。的字符。我的数据库可以接受吗?

4

1 回答 1

1

当然。只需使用String#substring

String middleInitial = "JKL";
middleInitial.substring(0, 2);
System.out.println(middleInitial); // => JK

同样,您可以substring(0, 1)用于性。

不过,如果性是一个枚举可能会更好。

public enum Sex {
  MALE("m"), FEMALE("f");

  final String symbol;
  private Sex(String symbol) {
    this.symbol = symbol;
  }
}

现在你可以像这样使用它:

字符串性别=“男”;Sex.valueOf(sex.toUpperCase());

或者直接

Sex.MALE;

您可以使用JComboBox而不是性别文本字段,这样用户只能选择两个选项之一。这样你肯定有有效的输入。

于 2013-04-10T04:06:42.163 回答