如何在lwuit textfield中大写首字?

时间:2013-05-30 13:35:14

标签: java-me lwuit lwuit-textfield

我已尝试使用以下代码将第一个字母大写: -

Form f = new Form();
TextField firstname = new TextField();
firstname.setConstraint(TextField.INITIAL_CAPS_SENTENCE);
f.addComponent(firstname);
f.show();

但这不起作用。

我在这里缺少什么?任何人都可以提出正确的方法来实现它吗?

注意:我正在使用LWUIT 1.5

被修改

这是我最后在Shai的帮助下完成的。

public void insertChars(String c) {
    super.insertChars(c); //To change body of generated methods, choose Tools | Templates.
    if(super.getText()!=null && super.getText().length()>0){      
        super.setText((super.getText().substring(0,1).toUpperCase())+super.getText().substring(1, super.getText().length()));
    }else{
        super.setText(super.getText());
    }
}

1 个答案:

答案 0 :(得分:1)

您是否有机会使用qwerty J2ME设备?如果是这样,这将不起作用,因为这仅适用于事物的原生方。

您需要派生TextField并覆盖insertChar()以实现此目的。