分享
 
 
 

J2ME MIDP个人所得税计算小应用【附源码】

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

基于宝蓝JBUILDER所提供的MIDP编程框架使开发J2ME应用变成一件所见即所得的简单事情:(本文所实现的MIDP应用直接使用了浮点数运算,必须于支持CLDC 1.1的环境下运行。对于使用CLDC 1.0实现浮点数运算的类库,请与作者公司联系【北京讯岚 TEL:010-51833115】,象征性有偿索取)

package jmobile;

import javax.microedition.midlet.*;

import javax.microedition.lcdui.*;

public class MIDletMain extends MIDlet {

static MIDletMain instance;

Displayable1 displayable = new Displayable1();

Alert alert1;

public MIDletMain() {

instance = this;

try {

jbInit();

}

catch(Exception e) {

e.printStackTrace();

}

}

public void startApp() {

Display.getDisplay(this).setCurrent(this.alert1,displayable);

}

public void pauseApp() {

}

public void destroyApp(boolean unconditional) {

}

public static void quitApp() {

instance.destroyApp(true);

instance.notifyDestroyed();

instance = null;

}

private void jbInit() throws Exception {

alert1 = new Alert("");

alert1.setType(AlertType.INFO);

alert1.setTimeout(2000);

alert1.setString("北京讯岚 2004");

alert1.setTitle("");

alert1.setImage(Image.createImage("/jmobile/Untitled-1.png"));

}

}

public class Displayable1 extends Form implements CommandListener {

ChoiceGroup choiceGroup1;

TextField textField1;

Alert alert1;

public Displayable1() {

super("QuickLine");

try {

jbInit();

}

catch (Exception e) {

e.printStackTrace();

}

}

private void jbInit() throws Exception {

// Set up this Displayable to listen to command events

String[] str = {

"北京", "上海", "深圳", "除北京、上海和深圳的其他地方"};

choiceGroup1 = new ChoiceGroup("", ChoiceGroup.EXCLUSIVE, str, null);

textField1 = new TextField("", "", 15, TextField.ANY);

alert1 = new Alert("");

alert1.setType(AlertType.INFO);

textField1.setLabel("您欲计算的收入");

textField1.setConstraints(TextField.DECIMAL);

choiceGroup1.setLabel("选择您所在的城市");

choiceGroup1.setFitPolicy(Choice.TEXT_WRAP_OFF);

choiceGroup1.setPreferredSize(145, 20);

this.setCommandListener(new Displayable1_this_commandAdapter(this));

setCommandListener(this);

// add the Exit command

addCommand(new Command("计算", Command.OK, 1));

addCommand(new Command("Exit", Command.EXIT, 2));

this.append(textField1);

this.append(choiceGroup1);

}

public void commandAction(Command command, Displayable displayable) {

/** @todo Add command handling code */

if(command.getCommandType()==Command.OK){

try{

String str=col(this.textField1.getString());

this.textField1.setString("");

this.alert1.setTimeout(Alert.FOREVER);

this.alert1.setString("您应缴纳个人所得税 "+str+" 元");

Display.getDisplay(MIDletMain.instance).setCurrent(this.alert1,this);

}

catch(Exception e)

{

this.textField1.setString("");

}

}

if ((command.getCommandType() == Command.EXIT) || (command.getCommandType() == Command.STOP)) {

// stop the MIDlet

MIDletMain.quitApp();

}

}

void this_commandAction(Command command, Displayable displayable) {

}

private String col(String input) {

try{

float v1=800;

switch(this.choiceGroup1.getSelectedIndex())

{

case 0:

v1=1000;

break;

case 1:

v1=1000;

break;

case 2:

v1=1600;

break;

}

float v2 = java.lang.Float.valueOf(input).floatValue();

if (java.lang.Float.isNaN(v2)) {

return "ERROR";

}

float v3 = v2 - v1;

if (v3 <= 0) {

v3 = 0;

return java.lang.Float.toString(v3);

}

if (v3 <= 500) {

return java.lang.Float.toString(v3 * 0.05f);

}

if (v3 <= 2000) {

return java.lang.Float.toString(v3 * 0.1f - 25);

}

if (v3 <= 5000) {

return java.lang.Float.toString(v3 * 0.15f - 125);

}

if (v3 <= 20000) {

return java.lang.Float.toString(v3 * 0.2f - 375);

}

if (v3 <= 40000) {

return java.lang.Float.toString(v3 * 0.25f - 1375);

}

if (v3 <= 60000) {

return java.lang.Float.toString(v3 * 0.3f - 3375);

}

if (v3 <= 80000) {

return java.lang.Float.toString(v3 * 0.35f - 6375);

}

if (v3 <= 100000) {

return java.lang.Float.toString(v3 * 0.4f - 10375);

}

return java.lang.Float.toString(v3 * 0.45f - 15375);

}

catch(Exception e){

return "ERROR";

}

}

class Displayable1_this_commandAdapter

implements javax.microedition.lcdui.CommandListener {

Displayable1 adaptee;

Displayable1_this_commandAdapter(Displayable1 adaptee) {

this.adaptee = adaptee;

}

public void commandAction(Command command, Displayable displayable) {

adaptee.this_commandAction(command, displayable);

}

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有