//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
闽公网安备 35060202000074号