| |
概述:这是两个java bean应用的例子,实现航空预定机票的功能。 预定构件功能说明: 1,预定构件应包含二个面板,预定座位面板与乘客面板 2,在装入预定构件时不应有可用的乘客面板 3,当用户打入要预定的旅行地点.旅行日期及座位号时: (1)首先,应按以下格式生成乘客号: (2)其次,在显示乘客号时应使乘客面板是可见的(注意:你可能重定beanbox窗口中bean大小,以观看此乘客面板。而且,如果打入座位号为0,则不应显示乘客面板。) (3)当用户点击乘客面板的submit按钮时,此面板的所有域控件中文本应置为空 (4)上面步骤被重复,直到所接收的乘客材料个数等于预定的座位数为止 4,在已预定了所需座位号之后,给出所预定座位号的消息框应被显示d 5,乘客面板应作为bean创建,可以把嵌入在铁路预定应用或航空应用中 6,你需接受以下格式之一的旅行日期"dd/mm/yy","mm/dd/yy","dd-month-yy" ----------------------------------------------- /*1 * program file: psevent.java * creat time: 08/01/2004 * creat by: inberkong * last modify time: * modify by: * function describe: event class */ import java.util.*; public class psevent extends eventobject { // public string number; public string name; public string address; public string phone; public psevent(object source,string m1,string m2,string m3,string m4) { super(source); this.number=m1; this.name=m2; this.address=m3; this.phone=m4; } } ------------------ /*2 * program file: pseventlistener.java * creat time: 08/01/2004 * creat by: inberkong * last modify time: * modify by: * function describe: event listener */ import java.util.*; public interface pseventlistener extends eventlistener { public void psperformed(psevent ev); } --------------------------- /*3 * program file: psbean.java * creat time: 08/01/2004 * creat by: inberkong * last modify time: * modify by: * function describe: passenger message bean */ import javax.swing.*; import java.awt.*; import java.awt.event.*; public class psbean extends jpanel implements actionlistener { jlabel lb_number; jlabel lb_name; jlabel lb_address; jlabel lb_phone; jtextfield tf_number; jtextfield tf_name; jtextfield tf_address; jtextfield tf_phone; jbutton sbmt; pseventlistener pl;//声明事件监听 public psbean() { setlayout(new gridlayout(5,2));//设置布局管理器 lb_number=new jlabel("passenger number:");//创建对象 lb_name=new jlabel("passenger name:"); lb_address=new jlabel("passenger address:"); lb_phone=new jlabel("passenger phone:"); tf_number=new jtextfield(15); tf_name=new jtextfield(15); tf_address=new jtextfield(25); tf_phone=new jtextfield(15); sbmt=new jbutton("submit"); add(lb_number); add(tf_number); add(lb_name); add(tf_name); add(lb_address); add(tf_address); add(lb_phone); add(tf_phone); add(sbmt); sbmt.addactionlistener(this);//监听事件 tf_number.setenabled(false); } public void actionperformed(actionevent evt) { object obj=evt.getsource(); if(obj==sbmt) { psevent ev=new psevent(obj,tf_number.gettext(),tf_name.gettext(),tf_address.gettext(),tf_phone.gettext()); pl.psperformed(ev); } } public void pslistener(pseventlistener el) { pl=el; } public void setpnrno(string ptemp) { tf_number.settext(ptemp); } public void refresh() { tf_number.settext(""); tf_name.settext(""); tf_address.settext(""); tf_phone.settext(""); } } --------------------- /*4 * program file: bpanel.java * creat time: 08/01/2004 * creat by: inberkong * last modify time: * modify by: * function describe: book panel bean */ import java.beans.*; import javax.swing.*; import java.awt.event.*; import java.awt.*; public class bpanel extends jpanel implements pseventlistener,actionlistener { jpanel pnl; boxlayout blo; jlabel label_date; jtextfield text_date; jlabel label_place; jtextfield text_place; jlabel label_nos; jtextfield text_nos; jbutton button_book; jlabel the_animation; string bank_name="flymyway airlines"; gridbaglayout gl_t; gridbagconstraints gbcs; //乘客面板javabean psbean pb; int t_nos; int t_count; string t_passno; //date format property with getter and setter methods private string the_datformat="mm/dd/yy"; public string getdatformat() { return the_datformat; } public void setdatformat(string temps) { the_datformat=temps; if(the_datformat=="mm/dd/yy") text_date.settext("mm/dd/yy"); if(the_datformat=="dd/mm/yy") text_date.settext("dd/mm/yy"); if(the_datformat=="dd-month-yy") text_date.settext("dd-month-yy"); } public bpanel() { pnl=new jpanel(); the_animation=new jlabel(bank_name); label_date=new jlabel("enter date of travel:"); text_date=new jtextfield(20); text_date.settext(the_datformat); label_place=new jlabel("enter place of travel:"); text_place=new jtextfield(15); label_nos=new jlabel("enter number of seats to be booked"); text_nos=new jtextfield(5); button_book=new jbutton("book seats"); gl_t=new gridbaglayout(); gbcs=new gridbagconstraints(); pnl.setlayout(gl_t); gbcs.gridx=3; gbcs.gridy=10; gbcs.anchor=gridbagconstraints.northwest; gl_t.setconstraints(the_animation,gbcs); pnl.add(the_animation); gbcs.gridx=2; gbcs.gridy=20; gbcs.anchor=gridbagconstraints.northwest; gl_t.setconstraints(label_date,gbcs); pnl.add(label_date); gbcs.gridx=4; gbcs.gridy=20; gbcs.anchor=gridbagconstraints.northwest; gl_t.setconstraints(text_date,gbcs); pnl.add(text_date); gbcs.gridx=2; gbcs.gridy=30; gbcs.anchor=gridbagconstraints.northwest; gl_t.setconstraints(label_place,gbcs); pnl.add(label_place); gbcs.gridx=4; gbcs.gridy=30; gbcs.anchor=gridbagconstraints.northwest; gl_t.setconstraints(text_place,gbcs); pnl.add(text_place); gbcs.gridx=2; gbcs.gridy=40; gbcs.anchor=gridbagconstraints.northwest;福建JSP技术网
--> |
|