免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1107 | 回复: 0
打印 上一主题 下一主题

java bean 消息驱动 3p2 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-10-09 21:18 |只看该作者 |倒序浏览

//Loan.java
/* This class contains the User Interface that Earnest Bank uses to add new loan types to the database. Whenever a new loan type is added, a property change event is generated */
import java.awt.*;
import java.awt.event.*;
import java.io.Serializable;
import javax.swing.*;
import java.beans.*;
public class Loan extends JPanel implements ActionListener
{
    protected PropertyChangeSupport changes=new PropertyChangeSupport(this);
    private String loanType=new String("Personal Loan");
    public void setLoanType(String temp)
    {
        String old=new String();
        old=loanType;
        loanType=temp;
        changes.firePropertyChange("loanType",old,temp);
    }
    public String getLoanType()
    {
        return loanType;
    }
    JLabel lid,ltype;
    JTextField tid,ttype;
    JButton submit;
    public Loan()
    {
        lid=new JLabel("Enter Loan Id:");
        tid=new JTextField(8);
        ltype=new JLabel("Loan Type:");
        ttype=new JTextField(15);
        submit=new JButton("ADD NEW LOAN");
        setLayout(new GridLayout(3,2));
        add(lid);add(tid);
        add(ltype);add(ttype);
        submit.addActionListener(this);
        add(submit);        
    }
    public void actionPerformed(ActionEvent evt)
    {
        Object obj=evt.getSource();
        if(obj==submit)
            setLoanType(ttype.getText());
    }   
    public void addPropertyChangeListener(PropertyChangeListener l)
    {
        changes.addPropertyChangeListener(l);
    }
    public void removePropertyChangeListener(PropertyChangeListener l)
    {
        changes.removePropertyChangeListener(l);
    }
}
//CustomerLoan.java
/* The following class is used by Earnest Bank to accept the details of customers who take loans. Whenever a new loan type is added to the database, the loan type should be
made available to the user.
/* This class traps the property change event generated by the Loan class and adds the new loan type to its loan type combo box. */
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.beans.*;
import java.io.*;
public class CustomerLoan implements PropertyChangeListener
{
    static JFrame frameObj;
    JPanel mp,chp1, Mpane;
    Loan lp;
    BoxLayout bl;
    JLabel lcname,lctype;
    JTextField tcname;
    JComboBox tctype;
    public CustomerLoan()
    {
        mp=new JPanel();
        chp1=new JPanel();
        Mpane=new JPanel();
        lp=new Loan();        
        //bl=new BoxLayout(mp,BoxLayout.Y_AXIS);        
        //bl.addLayoutComponent(new String("Loan Panel"),lp);
        //bl.addLayoutComponent(new String("Customer Panel"),chp1);
        Mpane.setLayout(new FlowLayout());
        Mpane.add(lp);
        Mpane.add(chp1);
        frameObj.getContentPane().add(Mpane);
        
        lcname=new JLabel("Customer Name:");
        lctype=new JLabel("Type of Loan taken:");
        tcname=new JTextField(6);
        tctype=new JComboBox();
        tctype.addItem(lp.getLoanType());
        chp1.setLayout(new GridLayout(2,2));
        chp1.add(lcname);
        chp1.add(tcname);
        chp1.add(lctype);
        chp1.add(tctype);
        lp.addPropertyChangeListener(this);        
    }
    public void propertyChange(PropertyChangeEvent pcevent)
    {
        System.out.println("propertyChange was call");
        tctype.addItem(pcevent.getNewValue());
    }
    public static void main(String args[])
    {
        frameObj=new JFrame("Loan Frame");
        new CustomerLoan();
        frameObj.setSize(400,400);
        frameObj.setVisible(true);
    }
}


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/49717/showart_1279930.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP