使用低级界面实现简单的数字输入
2006-09-13 17:58
330 查看
最近在写一个j2me程序 其中包括一个数字输入的textfield 在手机上面实现的时候(s40模拟器)数字的输入很烦琐,所以想避开这种问题 于是改用低级界面实现:
private StringBuffer sb=new StringBuffer(); //定义一个StringBuffer用来保存输入的数字
private int len=4; //想输入的数字的长度
private int temp; //取数字
protected void paint(Graphics g)
{
g.setColor(WHITE);
g.fillRect(0,0,getWidth(),getHeight());
g.setColor(BLACK);
g.drawString(sb.toString(),getWidth()/2,getHeight()/2,Graphics.TOP|Graphics.HCENTER); //显示输入内容
}
protected void keyPressed(int keynum)
{
if (sb.length()==len) //开始键功能描述
{
switch (keynum)
{
case KEY_STAR:
temp=Integer.parseInt(sb.toString()); //得到了屏幕中输入的数字 接下来自己可以利用数字按下*开始动能
break;
default:
break;
}
}
if (sb.length() {
switch (keynum)
{
case KEY_NUM1:
sb.append("1");
break;
case KEY_NUM2:
sb.append("2");
break;
case KEY_NUM3:
sb.append("3");
break;
case KEY_NUM4:
sb.append("4");
break;
case KEY_NUM5:
sb.append("5");
break;
case KEY_NUM6:
sb.append("6");
break;
case KEY_NUM7:
sb.append("7");
break;
case KEY_NUM8:
sb.append("8");
break;
case KEY_NUM9:
sb.append("9");
break;
case KEY_NUM0:
sb.append("0");
break;
default: break;
}
}
if(sb.length()>0) //退格键函数描述
{
if(keynum==KEY_POUND) sb.deleteCharAt(sb.length()-1);
}
repaint();
}
protected void keyReapeated(int keynum)
{
if(sb.length()>0) //长按一次性去除建函数描述
if(keynum==KEY_POUND) sb=null; }
repaint();
}
注意:keyReapeated()方法JTWI 并未做
硬性规定,所以我们在开发的时候一定要用Canvas.hasRepeatedEvents()方法来进行实际的侦测
private StringBuffer sb=new StringBuffer(); //定义一个StringBuffer用来保存输入的数字
private int len=4; //想输入的数字的长度
private int temp; //取数字
protected void paint(Graphics g)
{
g.setColor(WHITE);
g.fillRect(0,0,getWidth(),getHeight());
g.setColor(BLACK);
g.drawString(sb.toString(),getWidth()/2,getHeight()/2,Graphics.TOP|Graphics.HCENTER); //显示输入内容
}
protected void keyPressed(int keynum)
{
if (sb.length()==len) //开始键功能描述
{
switch (keynum)
{
case KEY_STAR:
temp=Integer.parseInt(sb.toString()); //得到了屏幕中输入的数字 接下来自己可以利用数字按下*开始动能
break;
default:
break;
}
}
if (sb.length() {
switch (keynum)
{
case KEY_NUM1:
sb.append("1");
break;
case KEY_NUM2:
sb.append("2");
break;
case KEY_NUM3:
sb.append("3");
break;
case KEY_NUM4:
sb.append("4");
break;
case KEY_NUM5:
sb.append("5");
break;
case KEY_NUM6:
sb.append("6");
break;
case KEY_NUM7:
sb.append("7");
break;
case KEY_NUM8:
sb.append("8");
break;
case KEY_NUM9:
sb.append("9");
break;
case KEY_NUM0:
sb.append("0");
break;
default: break;
}
}
if(sb.length()>0) //退格键函数描述
{
if(keynum==KEY_POUND) sb.deleteCharAt(sb.length()-1);
}
repaint();
}
protected void keyReapeated(int keynum)
{
if(sb.length()>0) //长按一次性去除建函数描述
if(keynum==KEY_POUND) sb=null; }
repaint();
}
注意:keyReapeated()方法JTWI 并未做
硬性规定,所以我们在开发的时候一定要用Canvas.hasRepeatedEvents()方法来进行实际的侦测
相关文章推荐
- 使用低级界面实现简单的数字输入
- Java认证:J2ME中用低级界面实现数字输入
- iOS开发UI篇—使用xib自定义UItableviewcell实现一个简单的团购应用界面布局
- iOS 使用纯代码自定义UITableViewCell实现一个简单的微博界面布局
- Recyclerview的一些个人理解与使用(二)实现一个简单的列表界面
- Android中使用Kotlin实现一个简单的登录界面
- 使用Olami SDK实现一个语音输入数字进行24点计算的iOS程序
- ios开发UI篇—使用纯代码自定义UItableviewcell实现一个简单的微博界面布局
- os开发UI篇—使用纯代码自定义UItableviewcell实现一个简单的微博界面布局
- ios开发UI篇—使用纯代码自定义UItableviewcell实现一个简单的微博界面布局
- loner_li 机试题 编写一个简单的计算器实现加减乘除:输入两个数字和一个运算符号,输出结果(注意容错性)
- 利用5个标签,4个文本框,2个按钮,自己设计布局实现输入三边求三角形面积。界面如下所示。三角形类的编写可以使用实验4中已经写过的三角形类,当点击“判断三边”时,若能构成三角形,在标签5上显示“可以构成三角形!”,如不能构成三角形,在标签5上显示“不能构成三
- 使用纯代码自定义UItableviewcell实现一个简单的微博界面布局
- 使用递归实现DigitSum()函数,输入一个非负整数,返回组成它的数字之和
- 数组例子2:二维数组中的行列互换和按钮控件数组实现计算器界面(暂不支持计算功能,仅界面及简单输入)
- Android使用Activity实现简单的可输入对话框
- Qt(二)--- 使用Qt完成QQ登录界面的输入文本框的实现
- DayDayUp之HTML5学习笔记 二 使用header、aside、section、footer实现一个简单的界面
- 使用java简单实现根据输入的汉字,得到汉字的首字母
- ios开发UI篇—使用纯代码自定义UItableviewcell实现一个简单的微博界面布局