lwuit TextField 的限制输入

package textfield;

import java.io.IOException;
import java.util.Hashtable;

import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;

import com.sun.lwuit.Display;
import com.sun.lwuit.Form;
import com.sun.lwuit.Label;
import com.sun.lwuit.TextArea;
import com.sun.lwuit.TextField;
import com.sun.lwuit.events.DataChangedListener;
import com.sun.lwuit.layouts.BorderLayout;
import com.sun.lwuit.plaf.UIManager;
import com.sun.lwuit.util.Resources;

public class TextFieldText1 extends MIDlet {

protected void destroyApp(boolean arg0) throws MIDletStateChangeException {
// TODO 自动生成方法存根

}

protected void pauseApp() {
// TODO 自动生成方法存根

}

protected void startApp() throws MIDletStateChangeException {
// TODO 自动生成方法存根

Display.init(this);
try {
Resources theme = Resources.open("/LWUITtheme.res");
UIManager.getInstance().setThemeProps(
theme.getTheme(theme.getThemeResourceNames()[0]));
} catch (IOException e) {
e.printStackTrace();
}
showForm();
}

public void showForm() {

Form f = new Form("测试TextField 的限制输入");
f.setLayout(new BorderLayout());

final Label label = new Label("空");

Hashtable ht = new Hashtable();
ht.put(new Integer('0'), "0");
ht.put(new Integer('9'), "9");
ht.put(new Integer('8'), "8");
ht.put(new Integer('7'), "7");
ht.put(new Integer('6'), "6");
ht.put(new Integer('5'), "5");
ht.put(new Integer('4'), "4");
ht.put(new Integer('3'), "3");
ht.put(new Integer('2'), "2");
ht.put(new Integer('1'), "1");
ht.put(new Integer('#'), "+");
TextField.addInputMode("+123", ht, false);

final TextField tf = new TextField();
tf.setConstraint(TextArea.PHONENUMBER );
tf.setInputMode("+123");
tf.setInputModeOrder(new String[]{"+123"});
tf.addDataChangeListener(new DataChangedListener(){
public void dataChanged(int i, int j) {
if(i == DataChangedListener.ADDED){
label.setText("ADDED");
if(tf.getText().length() > 5){
tf.setText(tf.getText().substring(0,5));
}
}
if(i == DataChangedListener.CHANGED){
label.setText("CHANGED");
}
if(i == DataChangedListener.REMOVED){
label.setText("REMOVED");
}
}
});

f.addComponent(BorderLayout.NORTH, tf);
f.addComponent(BorderLayout.SOUTH, label);
f.show();
}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值