网站首页
JSP空间
动态资讯
开源项目
技术文档
资源下载
J2EE资源
客户论坛
在线支付
 
  技术文档>>JAVA>>新手入门>>基础入门>查看文档  
  一个javabean的小例子     
  文章作者:未知  文章来源:水木森林  
  查看:200次  录入:管理员--2007-11-17  
 
  //loan.java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.beans.*;

public class loan extends jpanel implements actionlistener
{
jlabel ltype,lamount,lmonth,linstlmnt;
jtextfield tamount,tmonth,tinstlmnt;
jlist ttype;
jbutton submit;
string loantype;

string[] interestrates={"5","5","4"};
public string[] getinterestrates()
{
return interestrates;
}
public void setinterestrates(string[] interestrates)
{
this.interestrates=interestrates;
}
public loan()
{
ltype=new jlabel("贷款类型:");
lamount=new jlabel("贷款金额:");
lmonth=new jlabel("贷款月数:");
linstlmnt=new jlabel("每月应付金额:");
tamount=new jtextfield(10);
tmonth=new jtextfield(10);
tinstlmnt=new jtextfield(10);
string[] type={"housing","personal","car"};
ttype=new jlist(type);
submit=new jbutton("è?¶¨");
setlayout(new gridlayout(5,2));
add(ltype); add(ttype);
add(lamount); add(tamount);
add(lmonth);add(tmonth);
add(linstlmnt);add(tinstlmnt);
add(submit);
linstlmnt.setvisible(false);
tinstlmnt.setvisible(false);
submit.addactionlistener(this);
}
public void actionperformed(actionevent evt)
{
float intlmnt=0;
int carloan=0;
int personalloan=0;
int houseloan=0;
int amount;
int noofmonth;
jbutton source=(jbutton)evt.getsource();
amount=integer.parseint(tamount.gettext());
noofmonth=integer.parseint(tmonth.gettext());
//loantype = (string)ttype.getselectedvalue();
//tinstlmnt.settext("sample");
int amtpermonth=amount/noofmonth;
if(!(interestrates[0]).equals(""))
{
carloan=integer.parseint(interestrates[0]);
}
if(!(interestrates[1]).equals(""))
{
personalloan=integer.parseint(interestrates[1]);
}
if(!(interestrates[2]).equals(""))
{
houseloan=integer.parseint(interestrates[2]);
}
loantype=(string)ttype.getselectedvalue();
if(loantype.equals("personal"))
{
intlmnt=(personalloan*amount)/(100*noofmonth);
}
if(loantype.equals("housing"))
{
intlmnt=(houseloan*amount)/(100*noofmonth);
}
if(loantype.equals("car"))
{
intlmnt=(carloan*amount)/(100*noofmonth);
}
tinstlmnt.settext(string.valueof(intlmnt+amtpermonth));
linstlmnt.setvisible(true);
tinstlmnt.setvisible(true);
tinstlmnt.setenabled(false);
}
}

//loaneditor.java
import java.beans.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class loaneditor extends jpanel implements propertyeditor,actionlistener
{
jlabel lcar,lpersonal,lhouse;
jtextfield tcar,tpersonal,thouse;
string[] interestrates={"","",""};
jpanel panel;

public object getvalue()
{
interestrates[0]=tcar.gettext();
interestrates[1]=tpersonal.gettext();
interestrates[2]=thouse.gettext();
return interestrates;
}
public void setvalue(object ctemp)
{
interestrates= (string[]) ctemp;
tcar.settext(interestrates[0]);
tpersonal.settext(interestrates[1]);
thouse.settext(interestrates[2]);
}
public component getcustomeditor(){return this;}

public loaneditor()
{
lcar=new jlabel("æû³µ´û¿î");
lpersonal=new jlabel("¸öèë´û¿î");
lhouse=new jlabel("?¿îý´û¿î");
tcar=new jtextfield(10);
tpersonal=new jtextfield(10);
thouse=new jtextfield(10);
setlayout(new borderlayout());
panel=new jpanel();
panel.setlayout(new gridlayout(3,2));
panel.add(lcar); panel.add(tcar);
panel.add(lpersonal); panel.add(tpersonal);
panel.add(lhouse); panel.add(thouse);

add(new jpanel(),borderlayout.west);
add(new jpanel(),borderlayout.east);
add(panel,borderlayout.center);
tcar.addactionlistener(this);
tpersonal.addactionlistener(this);
thouse.addactionlistener(this);
}
public void actionperformed(actionevent evt)
{
interestrates[0]=tcar.gettext();
interestrates[1]=tpersonal.gettext();
interestrates[2]=thouse.gettext();
}

public boolean ispaintable(){ return true;}
public void paintvalue(graphics g,rectangle r){}
public string getjavainitializationstring(){ return null;}
public string getastext(){return null;}
public void setastext(string s) throws
illegalargumentexception{}
public string[] gettags(){ return null;}
public boolean supportscustomeditor(){ return true;}
}

//loanbeaninfo.java
import java.beans.*;
import java.awt.*;

public class loanbeaninfo extends simplebeaninfo
{
public propertydescriptor[] getpropertydescriptors()
{
try
{
propertydescriptor interestrates=new propertydescriptor("interestrates",loan.class);
interestrates.setpropertyeditorclass(loaneditor.class);

propertydescriptor arr[]=new propertydescriptor[1];
arr[0]=interestrates;
return arr;
}
catch(exception e)
{
system.out.println(e);
return null;
}
}
}

//loan.mft
name: loan.class
java-bean: true

name: loaneditor.class
java-bean: false

name: loanbeaninfo.class
java-bean: false

打包程序 jar cvfm loan.jar loan.mft *.class
 
 
上一篇: 一个applet-servlet通讯的例子    下一篇: 一个java的初学者如何正确编译helloworld程序
  相关文档
ejb3.0概览以及新版本的诸多进步 11-17
java知识:关于string和stringbuffer 11-17
java中对hashmap的深度分析与比较 11-16
java socket编程之二 11-17
scjp 和 scjd 的认证介绍 11-17
hibernate实践jbx+my sql4.0 11-17
java 图形用户界面设计(下) 11-17
editplus能够编译java嘛?如何设置 11-17
j2me游戏开发中时钟的简单实现 11-16
简单的网页关键词匹配工具 11-17
jxta技术与应用发展慨述 11-17
weblogic server 9.0 应用配置管理接口 11-16
关于ejb返回值的解决方案 11-16
详解用j2ee架构企业级应用 11-17
如何实现将统计表格保存成excel文件 11-17
程序员的七大武器 11-16
一些无聊的代码之一:java中的日期计算 11-17
更有效的使用jbuilder编辑器 11-17
j2ee到底是什么? 11-17
scjp认证套题解析之十 11-16
返回首页 | 关于我们 | J网章程 | JSP空间合租 | 客服中心 | 免责声明 | 常见问题 | 参观机房
本站主机空间代理至厦门市华众网络科技有限公司
《中华人民共和国增值电信业务经营许可证》
编号:闽B2-20050079
@2005-2008福建JSP技术网 版权所有 闽ICP备05000928号
技术电话:13616026886
邮箱:admin@fjjsp.com 站长QQ,点击这里给我发消息