编写一个学生信息登记系统,在新生入学时,用于录入学生的各种信息(GUI)
程序员文章站
2022-07-13 13:32:30
...
题目:编写一个学生信息登记系统,在新生入学时,用于录入学生的各种信息,如姓名、性别、班级、电话、手机、电子邮箱、通信地址、邮政编码等。在图形用户界面上,有菜单栏,也有工具栏及各种各样的控件。当学生的信息被录入后,需要保存在文件中。
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.*;
import javax.swing.*;
public class InfoDemo extends JFrame implements ActionListener{
//菜单条组件
JMenuBar jmb;
//菜单
JMenu menu1, menu2, menu3, menu4, menu5,menu6;
//菜单项
JMenuItem item1, item2, item3, item4, item5, item6,item7;
//工具条
JToolBar jtb;
//工具条项
JButton jb1, jb2, jb3, jb4, jb5, jb6, jb7;
//文本框
TextField tf1,tf2,tf3,tf4,tf5,tf6,tf7,tf8;
public void go(){
this.setTitle("学生信息登记系统");
this.setBounds(600, 300, 600, 280);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setLocationRelativeTo(null);
//创建菜单
jmb = new JMenuBar();
//不能设定位置,会自动放在最上部
this.setJMenuBar(jmb);
//添加菜单
menu1 = new JMenu("文件");
menu2 = new JMenu("编辑");
menu3 = new JMenu("视图");
menu4 = new JMenu("运行");
menu5 = new JMenu("工具");
menu6 = new JMenu("帮助");
item1 = new JMenuItem("新建");
item2 = new JMenuItem("打开");
item3 = new JMenuItem("保存");
item4 = new JMenuItem("另存为");
item5 = new JMenuItem("页面设置");
item6 = new JMenuItem("打印");
item7 = new JMenuItem("退出");
//添加菜单项至菜单上
menu1.add(item1);
menu1.add(item2);
menu1.add(item3);
menu1.add(item4);
menu1.add(item5);
menu1.add(item6);
//将菜单加入至菜单条
jmb.add(menu1);
jmb.add(menu2);
jmb.add(menu3);
jmb.add(menu4);
jmb.add(menu5);
//创建工具条
jtb = new JToolBar();
this.add(jtb, BorderLayout.NORTH);
//添加工具条
jb1 = new JButton("新建");
jb2 = new JButton("打开");
jb3 = new JButton("复制");
jb4 = new JButton("剪切");
jb5 = new JButton("打印");
jtb.add(jb1);
jtb.add(jb2);
jtb.add(jb3);
jtb.add(jb4);
jtb.add(jb5);
JPanel p = getCheckBoxPanel();
this.add(p,BorderLayout.CENTER);
JButton button = new JButton("保存");
this.add(button,BorderLayout.SOUTH);
button.addActionListener(this);
}
public JPanel getCheckBoxPanel(){
JPanel p = new JPanel();
p.setLayout(new FlowLayout());
p.add(new JLabel("姓 名"));
tf1 = new TextField(26);
p.add(tf1);
p.add(new JLabel("性 别"));
tf2 = new TextField(26);
p.add(tf2);
p.add(new JLabel("班 级"));
tf3 = new TextField(26);
p.add(tf3);
p.add(new JLabel("电 话"));
tf4 = new TextField(26);
p.add(tf4);
p.add(new JLabel("手 机"));
tf5 = new TextField(26);
p.add(tf5);
p.add(new JLabel("电子邮箱"));
tf6 = new TextField(26);
p.add(tf6);
p.add(new JLabel("通信地址"));
tf7 = new TextField(26);
p.add(tf7);
p.add(new JLabel("邮政编码"));
tf8 = new TextField(26);
p.add(tf8);
return p;
}
public static void main(String[] args) {
InfoDemo demo = new InfoDemo();
demo.go();
}
public void actionPerformed(ActionEvent e) {
try{
PrintStream out = new PrintStream(new File("output.txt"));
String str1 = tf1.getText();
out.println("姓名:" + str1);
String str2 = tf2.getText();
out.println("性别:" + str2);
String str3 = tf3.getText();
out.println("班级:" + str3);
String str4 = tf4.getText();
out.println("电话:" + str4);
String str5 = tf5.getText();
out.println("手机:" + str5);
String str6 = tf6.getText();
out.println("电子邮箱:" + str6);
String str7 = tf7.getText();
out.println("通信地址:" + str7);
String str8 = tf8.getText();
out.println("邮政编码:" + str8);
}catch(FileNotFoundException ex){
System.out.println("无法打开文件");
}
}
}
运行效果: