我来我网
https://5come5.cn
 
您尚未 登录  注册 | 菠菜 | 软件站 | 音乐站 | 邮箱1 | 邮箱2 | 风格选择 | 更多 » 
 

本页主题: 一个JAVABean的小例子 显示签名 | 打印 | 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题

2004



性别: 帅哥 状态: 该用户目前不在线
等级: 品行端正
发贴: 222
威望: 0
浮云: 1107
在线等级:
注册时间: 2006-09-25
最后登陆: 2011-10-25

5come5帮你背单词 [ politics /'politiks/ n. 政治,政治学 ]


一个JAVABean的小例子


//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("Æ?3μ′???");
lpersonal=new JLabel("??è?′???");
lhouse=new JLabel("???Y′???");
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


 
顶端 Posted: 2008-01-10 15:36 | [楼 主]
mys





性别: 帅哥 状态: 该用户目前不在线
等级: 栋梁之材
发贴: 712
威望: 0
浮云: 1199
在线等级:
注册时间: 2007-01-05
最后登陆: 2008-06-29

5come5帮你背单词 [ niece /ni:s/ n. 侄女,外甥女 ]


好长啊
顶端 Posted: 2008-01-12 09:56 | [1 楼]
我来我网·5come5 Forum » 程序员之家

Total 0.009842(s) query 7, Time now is:12-05 10:20, Gzip enabled
Powered by PHPWind v5.3, Localized by 5come5 Tech Team, 黔ICP备16009856号