📄 flightgui.java
字号:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
public class FlightGUI extends JFrame{
private static final int WIDTH =500;
private static final int HEIGHT=500;
private JFrame parFrame;
public JLabel flightnumberlabel;
public JComboBox flightCombo;
public JLabel aircraftlabel;
public JComboBox aircraftCombo;
public JLabel startlabel;
public JTextField textfield1;
public JLabel destinationlabel;
public JTextField textfield2;
public JLabel datelabel;
public JTextField textfield3;
public JLabel timelabel;
public JTextField textfield4;
public String flightInfor;
public String end="\n";
private EconomyClass myEconomyClass;
private FirstClass myFirstClass;
private EconomyClass myEconomyClass1;
public FlightGUI(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 LabelPanel(),BorderLayout.CENTER);
con.add(new ButtonPanel(this),BorderLayout.SOUTH);//get customize panel
}
public class LabelPanel extends JPanel
{
public LabelPanel()
{
GridBagLayout layout=new GridBagLayout();
setLayout(layout);
flightnumberlabel=new JLabel("flight number:");
flightCombo=new JComboBox();
flightCombo.addItem("CA124");
flightCombo.addItem("HA234");
flightCombo.addItem("FH893");
aircraftlabel=new JLabel("aircraft:");
aircraftCombo=new JComboBox();
aircraftCombo.addItem("B747");
aircraftCombo.addItem("A340");
startlabel=new JLabel("start:");
textfield1=new JTextField(10);
destinationlabel=new JLabel("destination:");
textfield2=new JTextField(10);
datelabel=new JLabel("date:");
textfield3=new JTextField(10);
timelabel=new JLabel("time:");
textfield4=new JTextField(10);
GridBagConstraints constraints =new GridBagConstraints();
constraints.fill=GridBagConstraints.NONE;
constraints.anchor=GridBagConstraints.EAST;
constraints.weightx=5;
constraints.weighty=5;
add(flightnumberlabel,constraints,0,0,1,1);
add(aircraftlabel,constraints,0,1,1,1);
add(startlabel,constraints,0,2,1,1);
add(destinationlabel,constraints,0,3,1,1);
add(datelabel,constraints,0,4,1,1);
add(timelabel,constraints,0,5,1,1);
constraints.fill=GridBagConstraints.NONE;
constraints.weightx=100;
add(flightCombo,constraints,1,0,1,1);
add(aircraftCombo,constraints,1,1,1,1);
add(textfield1,constraints,1,2,1,1);
add(textfield2,constraints,1,3,1,1);
add(textfield3,constraints,1,4,1,1);
add(textfield4,constraints,1,5,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 ButtonPanel(JFrame subFrame)
{
JButton savebutton=new JButton("save");
JButton nextbutton=new JButton("next");
JButton cancelbutton=new JButton("cancel");
JButton previousbutton=new JButton("previous");
add(savebutton);
savebutton.addActionListener(new MakeFlightInforAction());
add(nextbutton);
add(previousbutton);
add(cancelbutton);
previousbutton.addActionListener(new MakeNewPassengerAction());
nextbutton.addActionListener(new MakeNewAircraftAction());
cancelbutton.addActionListener(new PreviousBookingSystemAction(subFrame));
}
public class MakeFlightInforAction implements ActionListener
{
public void actionPerformed(ActionEvent event)
{
flightInfor="Flight Information: "+end
+" flightnumber: "+flightCombo.getSelectedItem()+" aircraft type: "+aircraftCombo.getSelectedItem()
+" start: "+textfield1.getText()+" destination: "+textfield2.getText()+" date: "+textfield3.getText()
+" time: "+textfield4.getText();
System.out.println(flightInfor);
try{
FileWriter fw=new FileWriter("Flight.txt");
fw.write(flightInfor+"\n");
fw.close();
}catch(IOException e){}
}
}
public class MakeNewAircraftAction implements ActionListener
{
public void actionPerformed(ActionEvent event)
{
AircraftGUI2 subFrame=new AircraftGUI2(parFrame,myEconomyClass,myEconomyClass1,myFirstClass);//transfer first frame to the second frame
subFrame.setVisible(true);
parFrame.setVisible(false);
}
}
public class MakeNewPassengerAction implements ActionListener
{
public void actionPerformed(ActionEvent event)
{
PassengerGUI subFrame=new PassengerGUI(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 + -