0

テキストフィールドの入力の最初の文字を大文字にする方法.または、テキストフィールドのテキスト変更イベントで変更することは可能ですか.また、最初の文字としてスペースを持たないようにしたい.(テキストの途中で使用される場合がありますが)

他のパラメーターをテストするためのテキストフィールド検証のコードは次のとおりです

    TextField1 = new TextField("\n Customer Name: ",null)
     {
            protected boolean keyChar(char ch, int status, int time) 
            {
            if (CharacterUtilities.isLetter(ch) || (ch == Characters.BACKSPACE || (ch == Characters.SPACE))) 
            {
            return super.keyChar(ch, status, time);
            }
           return true;
            }
        };
     add(TextField1);

ガイドしてください。ありがとう

再編集:

      AutoTextEditField auto = new AutoTextEditField("Name: ",EditField.NO_NEWLINE | Field.EDITABLE | AutoTextEditField.NON_SPELLCHECKABLE);

     add(auto);

再編集 2: 以下のコードを使用すると、(先頭または間に) スペースが入力されるのを防ぐことができます。以下のアイデアをどのように得たかについては、このリンクを参照してください

BasicEditField bf = new BasicEditField("BasicEditField: ","", 10,EditField.FILTER_UPPERCASE); 
     class AlphaTextFilter extends TextFilter
    {
      public char convert(char c, int status) 
      {
      if (!validate(c))
           return 0;
           return c;
      }

       public boolean validate(char c) 
       {
         return CharacterUtilities.isLetter(c);
       }
    }
    bf.setFilter(new AlphaTextFilter());
    add(bf);
4

1 に答える 1

1

次のフラグのAutoTextEditField代わりに使用します: .TextFieldEditField.NO_NEWLINE | Field.EDITABLE | AutoTextEditField.NON_SPELLCHECKABLE

実際の値の前のスペースを恐れないでください。trim()最終値を呼び出すだけです。

于 2012-05-16T13:47:25.687 に答える