加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 教程 > 正文

用一个 jsp page调用插件实现人民币字母的字母转换

发布时间:2023-06-27 15:10:20 所属栏目:教程 来源:
导读:小程序以前从未被使用过,更不用说在JSP页面中了,这次错新技术频道小编教你学习jsp页面调用applet实现人民币的大小写转换的方法,希望对你学习有帮助!

实现方法一

applet实现页面是rmb.jsp,此页面是通过a
小程序以前从未被使用过,更不用说在JSP页面中了,这次错新技术频道小编教你学习jsp页面调用applet实现人民币的大小写转换的方法,希望对你学习有帮助!
 
实现方法一
 
applet实现页面是rmb.jsp,此页面是通过applet来实现人民币小写转换成大写的。此页面有三个变量需要在载入classes的时候进行初始化:
 
<applet  type="applet" id="myApplet" codebase = "." name="TestApplet"
 
 align="middle" code="lqh.rmb.Applicate.Rmb.class"
 
width="560" height="25">
 
<param name="RGB_Back" value="241|247|251">
 
<param name="RGB_Fore" value="255|0|0"/>
 
<param name="WIGTH" value="560"/>
 
</applet>
 
变量RGB_Back是初始化背景色的,修改次变量可以使applet的背景色跟自己页面的风格一样;变量RGB_Fore是初始化字体的颜色; WIGTH要和applet的宽度一样,这个变量是保证显示的转换信息在中间显示。
 
此种方法不能传递值给页面trans.jsp,只能显示并且不能copy。
 
页面代码如下:
 
<html>
 
<head>人民币小写转换成大写</head>
 
<%@ page contenttype="text/html;charset=gb2312" %>
 
<SCRIPT language=JavaScript>
 
function trans(){
 
   //取变量的值
 
   var aaa=document.rmb. rmb_test.value;
 
   //给applet赋变量的值
 
   document.myApplet.setRMB(aaa);
 
   document.myApplet.repaint();
 
   return true;
 
}
 
</SCRIPT>
 
<body>
 
<form name="rmb">
 
 输入金额:<input type=”text” name=”rmb_test”  onkeyup=”trans()”><br><hr>
 
 <%@ include file="../rmb.jsp" %>
 
</form>
 
</body>
 
</html>
 
实现方法二
 
applet实现页面是rmb.jsp,此页面是通过applet来实现人民币小写转换成大写的。此页面不需要变量进行初始化,在页面上不显示applet画的图像;而可以把转换的值传递给页面变量:
 
<applet  type="applet" id="myApplet" codebase = "." name="TestApplet"
 
     align="middle" code="lqh.rmb.Applicate.Rmb.class"
 
width="0" height="0">
 
</applet>
 
页面trans.jsp代码如下:
 
<html>
 
<head>人民币小写转换成大写</head>
 
<%@ page contenttype="text/html;charset=gb2312" %>
 
<%@ include file="../rmb.jsp" %>
 
<SCRIPT language=JavaScript>
 
function trans(){  
 
   var aaa=document.rmb. rmb_test.value;
 
   //得到转换的值
 
   var rmb = document.myApplet.getRMB(aaa);
 
   document.rmb. rmb_result.value = rmb;
 
   return true;
 
}
 
</SCRIPT>
 
<body>
 
<form name="rmb">
 
  输入金额:<input type=”text” name=”rmb_test”  onkeyup=”trans()”><br>
 
转换结果:<input type=”text” name=”rmb_result” ><br>
 
</form>
 
</body>
 
</html>
 
附录
 
1.applet代码:
 
package lqh.rmb.Applicate;

import java.awt.*;
 
import java.awt.event.*;
 
import java.applet.*;
 
import lqh.rmb.*;
 
public class Rmb extends Applet {
 
  private boolean isStandalone = false;
 
  private RMBConversion rmb=new RMBConversion();
 
  private  String var0 = "";
 
  private  String re_rmb="";
 
  private  String wigth ="0";
 
  private String back_color;
 
  private String fore_color;

  public String getParameter(String key, String def) {
 
   return isStandalone ? System.getProperty(key, def) :
 
     (getParameter(key) != null ? getParameter(key) : def);
 
  }
 
  public void paint(Graphics g) {
 
    if(wigth.equals("0")){
 
      wigth = "560";
 
    }
 
    int i= Integer.parseInt(wigth);
 
    if(checkNum(var0)){
 
      if(var0.endsWith(".")){
 
       var0 = var0.substring(0,var0.length()-1);
 
      }
 
      re_rmb= rmb.RMB(var0);
 
    }else{
 
      re_rmb="输入错误:"+var0;
 
    }
 
    int middel =(i - re_rmb.length()*12)/2;
 
    this.setBackground(new Color(getColor(back_color)[0], getColor(back_color)[1], getColor(back_color)[2]));
 
    this.setForeground(new Color(getColor(fore_color)[0], getColor(fore_color)[1], getColor(fore_color)[2]));
 
    g.drawString(re_rmb,middel,20);
 
  }
 
  public void init() {
 
    try {
 
      back_color = this.getParameter("RGB_Back", "241|247|251");
 
       }catch(Exception e) {e.printStackTrace();}
 
   try {
 
     fore_color = this.getParameter("RGB_Fore", "255|0|0");
 
     }catch(Exception e) {e.printStackTrace();}
 
   try {
 
     wigth = this.getParameter("WIGTH", "0");
 
     }catch(Exception e) {e.printStackTrace();}
 
   try {
 
     jbInit();
 
   }catch(Exception e) { e.printStackTrace(); }
 
 }
 
  private void jbInit() throws Exception {
 
   this.setBackground(new Color(getColor(back_color)[0], getColor(back_color)[1], getColor(back_color)[2]));
 
  }
 
  public void setRMB(String rmb_temp){
 
    var0 = rmb_temp;
 
  }
 
  public String getRMB(String rmb_temp){
 
    if(checkNum(rmb_temp)){
 
      if(rmb_temp.endsWith(".")){
 
       rmb_temp = rmb_temp.substring(0,rmb_temp.length()-1);
 
      }
 
      re_rmb= rmb.RMB(rmb_temp);
 
    }else{
 
      re_rmb="输入错误:"+rmb_temp;
 
    }
 
    return re_rmb;
 
  }
 
  public boolean checkNum(String str){
 
    String numChar="0123456789.";
 
    boolean breakBoolean = false;
 
    for(int i=0;i<str.length();i++){
 
      if(numChar.indexOf(str.substring(i,i+1))<0){
 
        breakBoolean =true;
 
      }
 
      if(breakBoolean) break;
 
    }
 
    if(breakBoolean){
 
      return false;
 
    }else{
 
      if(str.startsWith(".")){
 
        return false;
 
      }else{
 
        return true;
 
      }
 
    }
 
  }
 
  public String[][] getParameterInfo() {
 
    String[][] pinfo =
 
      {
 
      {"RGB_Back", "String", ""},
 
      {"RGB_Fore", "String", ""},
 
      {"WIGTH",    "String", ""},
 
      };
 
    return pinfo;
 
  }
 
  private int[] getColor(String rgb){
 
   int[] rgb_return = new int[3];
 
   int index =0,nextIndex=0,len=0;
 
   while((index =rgb.indexOf("|",nextIndex))>-1){
 
    rgb_return[len]=getInt(rgb.substring(nextIndex,index));
 
    nextIndex=index+1;
 
    len++;
 
   }
 
   rgb_return[len]=getInt(rgb.substring(nextIndex));
 
   return rgb_return;
 
  }
 
  private int getInt(String str){
 
    try{
 
      return Integer.parseInt(str);
 
    }catch(Exception e){
 
      return 0;
 
    }
 
  }
 
}
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!