import java.awt.*;
import java.awt.event.*;
public class StuInf implements WindowListener,ItemListener,ActionListener
{
Frame f=new Frame("Student Information");
Label l1=new Label("学号:",Label.CENTER),
l2=new Label("姓名:",Label.CENTER),
l3=new Label("性别:",Label.CENTER),
l4=new Label("生日:",Label.CENTER),
l5=new Label("年",Label.CENTER),
l6=new Label("月",Label.CENTER),
l7=new Label("日",Label.CENTER),
l8=new Label("联合培养:",Label.CENTER);
TextField t1=new TextField(7),
t2=new TextField(7),
t3=new TextField(7);
CheckboxGroup cbg1=new CheckboxGroup(),
cbg2=new CheckboxGroup();
Checkbox cb1=new Checkbox("♂",false,cbg1),
cb2=new Checkbox("♀",false,cbg1),
cb3=new Checkbox("是",false,cbg2),
cb4=new Checkbox("否",false,cbg2);
Choice ci1=new Choice(),
ci2=new Choice(),
ci3=new Choice();
Button b1=new Button("录入"),
b2=new Button("清除");
String s[]=new String[8];
int n[]=new int[1];
boolean bl[]={false,false};
public void create()
{
GridBagLayout gbl=new GridBagLayout();
GridBagConstraints gbc=new GridBagConstraints();
f.setLayout(gbl);
gbc.insets=new Insets(10,20,360,10);
gbl.setConstraints(l1,gbc);
f.add(l1);
gbc.insets=new Insets(10,10,360,300);
gbl.setConstraints(t1,gbc);
f.add(t1);
gbc.insets=new Insets(40,-797,330,10);
gbl.setConstraints(l2,gbc);
f.add(l2);
gbc.insets=new Insets(40,-663,330,10);
gbl.setConstraints(t2,gbc);
f.add(t2);
gbc.insets=new Insets(70,-663,300,10);
gbl.setConstraints(t3,gbc);
f.add(t3);
gbc.insets=new Insets(100,-797,270,10);
gbl.setConstraints(l3,gbc);
f.add(l3);
gbc.insets=new Insets(100,-705,270,10);
gbl.setConstraints(cb1,gbc);
f.add(cb1);
gbc.insets=new Insets(100,-610,270,10);
gbl.setConstraints(cb2,gbc);
f.add(cb2);
gbc.insets=new Insets(130,-797,240,10);
gbl.setConstraints(l4,gbc);
f.add(l4);
for(int i=1978;i<=1990;i++)
{ci1.add(Integer.toString(i));}
gbc.insets=new Insets(130,-680,240,10);
gbl.setConstraints(ci1,gbc);
f.add(ci1);
gbc.insets=new Insets(130,-590,240,10);
gbl.setConstraints(l5,gbc);
f.add(l5);
for(int i=1;i<=12;i++)
{ci2.add(Integer.toString(i));}
gbc.insets=new Insets(130,-520,240,10);
gbl.setConstraints(ci2,gbc);
f.add(ci2);
gbc.insets=new Insets(130,-445,240,10);
gbl.setConstraints(l6,gbc);
f.add(l6);
for(int i=1;i<=28;i++)
{ci3.add(Integer.toString(i));}
gbc.insets=new Insets(130,-375,240,10);
gbl.setConstraints(ci3,gbc);
f.add(ci3);
gbc.insets=new Insets(130,-300,240,10);
gbl.setConstraints(l7,gbc);
f.add(l7);
gbc.insets=new Insets(160,-797,210,10);
gbl.setConstraints(l8,gbc);
f.add(l8);
gbc.insets=new Insets(160,-650,210,10);
gbl.setConstraints(cb3,gbc);
f.add(cb3);
gbc.insets=new Insets(160,-560,210,10);
gbl.setConstraints(cb4,gbc);
f.add(cb4);
gbc.insets=new Insets(200,-620,180,10);
gbl.setConstraints(b1,gbc);
f.add(b1);
gbc.insets=new Insets(200,-480,180,10);
gbl.setConstraints(b2,gbc);
f.add(b2);
ci1.addItemListener(this);
ci2.addItemListener(this);
ci3.addItemListener(this);
cb1.addItemListener(this);
cb2.addItemListener(this);
cb3.addItemListener(this);
cb4.addItemListener(this);
b1.addActionListener(this);
b2.addActionListener(this);
f.setBackground(Color.blue);
f.setSize(400,500);
f.setVisible(true);
}
public void itemStateChanged(ItemEvent e)
{
if((ci2.getSelectedItem()=="1")||(ci2.getSelectedItem()=="3")||
(ci2.getSelectedItem()=="5")||(ci2.getSelectedItem()=="7")||
(ci2.getSelectedItem()=="8")||(ci2.getSelectedItem()=="10")||
(ci2.getSelectedItem()=="12"))
{if(ci3.getItemCount()==28){ci3.add("29");ci3.add("30");ci3.add("31");}
if(ci3.getItemCount()==29){ci3.add("30");ci3.add("31");}
if(ci3.getItemCount()==30){ci3.add("31");}}
if((ci2.getSelectedItem()=="4")||(ci2.getSelectedItem()=="6")||
(ci2.getSelectedItem()=="9")||(ci2.getSelectedItem()=="11"))
{if(ci3.getItemCount()==28){ci3.add("29");ci3.add("30");}
if(ci3.getItemCount()==29){ci3.add("30");}
if(ci3.getItemCount()==31){ci3.remove("31");}}
if((ci2.getSelectedItem()=="2"))
{if(Integer.parseInt(ci1.getSelectedItem())%4==0)
{if(ci3.getItemCount()==28){ci3.add("29");}
if(ci3.getItemCount()==30){ci3.remove("30");}
if(ci3.getItemCount()==31){ci3.remove("30");ci3.remove("31");}}
if(Integer.parseInt(ci1.getSelectedItem())%4!=0)
{if(ci3.getItemCount()==29){ci3.remove("29");}
if(ci3.getItemCount()==30){ci3.remove("29");ci3.remove("30");}
if(ci3.getItemCount()==31){ci3.remove("29");ci3.remove("30");ci3.remove
("31");}}
}
if(cb1.getState()==true)
{s[1]="♂";}
if(cb2.getState()==true)
{s[1]="♀";}
if(cb3.getState()==true)
{s[2]="是";}
if(cb4.getState()==true)
{s[2]="否";}
s[3]=ci1.getSelectedItem();
s[4]=ci2.getSelectedItem();
s[5]=ci3.getSelectedItem();
}
public void actionPerformed(ActionEvent e)
{
s[0]=t1.getText();s[6]=t2.getText();
if(e.getSource()==b1)
{
System.out.println(l1.getText()+s[0]);
System.out.println(l2.getText()+s[6]);
System.out.println(l4.getText());
System.out.println(l5.getText()+":"+s[3]);
System.out.println(l6.getText()+":"+s[4]);
System.out.println(l7.getText()+":"+s[5]);
System.out.println(l3.getText()+s[1]);
System.out.println(l8.getText()+s[2]);
}
if(e.getSource()==b2)
{
t1.setText("");t2.setText("");t3.setText("");
}
}
/*class WindowClosing extends WindowAdapter
{
public void windowClosing(WindowEvent e)
{System.exit(0);}
} */
public void windowClosing(WindowEvent e) {System.exit(1);};
public void windowOpened(WindowEvent e){};
public void windowIconified(WindowEvent e){};
public void windowActivated(WindowEvent e){};
public void windowDeactivated(WindowEvent e){};
public void windowClosed(WindowEvent e){};
public void windowDeiconified(WindowEvent e){};
public static void main(String args[])
{
StuInf stu=new StuInf();
stu.create();
}
}