📄 passengergui.java
字号:
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.FileWriter;
import java.io.IOException;
import javax.swing.*;
public class PassengerGUI extends JFrame{
private static final int WIDTH =300;
private static final int HEIGHT=500;
private JFrame parFrame;
private String passengerInfor;
private String end="\n";
public JLabel label1;
public JTextField textfield1;
public JLabel label2;
public JTextField textfield2;
public JLabel label3;
public JTextField textfield3;
public JLabel label4;
public JComboBox yearBox;
public JComboBox monthBox;
public JComboBox dayBox;
public JComboBox sexbox;
public JLabel label5;
private EconomyClass myEconomyClass;
private FirstClass myFirstClass;
private EconomyClass myEconomyClass1;
public PassengerGUI(JFrame frame,EconomyClass myEconomyClass,EconomyClass myEconomyClass1,FirstClass myFirstClass)
{
this.myEconomyClass=myEconomyClass;
this.myEconomyClass1=myEconomyClass1;
this.myFirstClass=myFirstClass;
parFrame=frame;
Container con=getContentPane();
Toolkit kit=Toolkit.getDefaultToolkit();
setSize(WIDTH,HEIGHT);
setTitle("Booking System");
Dimension screensize=kit.getScreenSize();
int width=screensize.width;
int height=screensize.height;
int x=(width-WIDTH)/2;
int y=(height-HEIGHT)/2;
setLocation(x,y);
setResizable(true);
con.add(new TitlePanel(),BorderLayout.NORTH);
con.add(new LabelPanel(),BorderLayout.CENTER);
con.add(new ButtonPanel(this),BorderLayout.SOUTH);
}
public class TitlePanel extends JPanel
{
public JLabel label1;
public Font stringfont;
public TitlePanel()
{
label1=new JLabel("Passenger information");
stringfont=new Font("serif",Font.BOLD+Font.ITALIC,18);
label1.setFont(stringfont);
add(label1);
}
}
public class LabelPanel extends JPanel
{
public LabelPanel()
{
GridBagLayout layout=new GridBagLayout();
setLayout(layout);
label1=new JLabel("name:");
textfield1=new JTextField(10);
label2=new JLabel("First name:");
textfield2=new JTextField(10);
label3=new JLabel("address:");
textfield3=new JTextField(10);
label4=new JLabel("data of birth:");
label5=new JLabel("sex:");
yearBox=new JComboBox();
for(int i=0;i<20;i++)
{
yearBox.addItem(String.valueOf(1990+i));
}
monthBox=new JComboBox();
for(int i=0;i<12;i++)
{
monthBox.addItem(String.valueOf(1+i));
}
dayBox=new JComboBox();
for(int i=0;i<31;i++)
{
dayBox.addItem(String.valueOf(1+i));
}
sexbox=new JComboBox();
sexbox.addItem("male");
sexbox.addItem("female");
GridBagConstraints constraints=new GridBagConstraints();
constraints.fill=GridBagConstraints.NONE;
constraints.anchor=GridBagConstraints.EAST;
constraints.weightx=5;
constraints.weighty=5;
add(label1,constraints,0,0,1,1);
add(label2,constraints,0,1,1,1);
add(label3,constraints,0,2,1,1);
add(label4,constraints,0,3,1,1);
add(label5,constraints,0,4,1,1);
constraints.fill=GridBagConstraints.NONE;
constraints.anchor=GridBagConstraints.EAST;
add(textfield1,constraints,1,0,1,1);
add(textfield2,constraints,1,1,1,1);
add(textfield3,constraints,1,2,1,1);
add(yearBox,constraints,1,3,1,1);
add(monthBox,constraints,2,3,1,1);
add(dayBox,constraints,3,3,1,1);
add(sexbox,constraints,1,4,1,1);
}
public void add(Component c,GridBagConstraints constraints,int x,int y,int w,int h)
{
constraints.gridx=x;
constraints.gridy=y;
constraints.gridwidth=w;
constraints.gridheight=h;
add(c,constraints);
}
}
public class ButtonPanel extends JPanel
{
public JButton savebutton;
public JButton loadbutton;
public JButton okbutton;
public ButtonPanel(JFrame subFrame)
{
JButton savebutton=new JButton("save");
JButton loadbutton=new JButton("load");
JButton okbutton=new JButton("next");
JButton previousbutton=new JButton("cancel");
add(savebutton);
savebutton.addActionListener(new SaveThePassengerInfor());
add(loadbutton);
add(okbutton);
add(previousbutton);
okbutton.addActionListener(new MakeNewflightAction());
previousbutton.addActionListener(new PreviousBookingSystemAction(subFrame));
}
public class SaveThePassengerInfor implements ActionListener
{
public void actionPerformed(ActionEvent event)
{
passengerInfor="passenger information:"+end+" name:"+textfield1.getText()+" FirstName: "+textfield2.getText()+
" address: "+textfield3.getText()+" data of birth: "+yearBox.getSelectedItem()+" "+monthBox.getSelectedItem()
+" "+dayBox.getSelectedItem()+" "+sexbox.getSelectedItem();
System.out.println(passengerInfor);
try{
FileWriter fw=new FileWriter("Passenger.txt");
fw.write(passengerInfor+"\n");
fw.close();
}catch(IOException e){}
}
}
public class MakeNewflightAction implements ActionListener
{
public void actionPerformed(ActionEvent event)
{
FlightGUI subFrame=new FlightGUI(parFrame,myEconomyClass,myEconomyClass1,myFirstClass);//transfer first frame to the second frame
subFrame.setVisible(true);
parFrame.setVisible(false);
}
}
public class PreviousBookingSystemAction implements ActionListener
{
private JFrame subFrame;
public PreviousBookingSystemAction(JFrame subFrame)
{
this.subFrame=subFrame;
}
public void actionPerformed(ActionEvent e)
{
subFrame.setVisible(false);
parFrame.setVisible(true);
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -