📄 class1.java
字号:
import java.awt.*;
import java.awt.event.*;
import java.io.*;
public class Class1
{
public static void main (String[] args)
{
Frame f=new Frame("菜单条");
Student student[]=new Student[10];
int i;
for (i=0;i<student.length;i++)
{
student[i]=new Student();
student[i].name=new String();
student[i].sex=new String();
student[i].no=new String();
}
MenuBar mb=new MenuBar();//菜单条无法单独显示出来,用于管理菜单
Menu m1=new Menu("文件");
Menu m2=new Menu("输入");
MenuItem mi1=new MenuItem("打开文件");
MenuItem mi2=new MenuItem("保存数据");
MenuItem mi3=new MenuItem("数据输入");
m1.add(mi1);//在m1菜单上添加mi1菜单项
m1.add(mi2);
m2.add(mi3);
mb.add(m1);//将菜单添加到菜单条上
mb.add(m2);
Handler handler=new Handler();
handler.f=f;
handler.stu=student;
mi1.addActionListener(handler);
mi2.addActionListener(handler);
mi3.addActionListener(handler);
f.setMenuBar(mb);//注意并没有使用f.add方法
f.setSize(280,280);
f.show();
}
}
class Handler implements ActionListener {
Frame f;
Student stu[];
public void actionPerformed(ActionEvent e){
if (e.getActionCommand()=="打开文件")
{
FileDialog fd=new FileDialog(f,"Dialog");
fd.setVisible(true);
System.out.println(stu[0].name+" " +stu[0].sex);
}
else if (e.getActionCommand()=="保存数据")
{
FileDialog fd=new FileDialog(f,"Dialog");
fd.setVisible(true);
try
{
FileOutputStream out =new FileOutputStream(fd.getFile()) ;
OutputStreamWriter out1=new OutputStreamWriter(out);
int i;
for (i=0;i<stu.length-1;i++)
{
out1.write(stu[i].name,0,stu[i].name.length());
out1.write(stu[i].sex,0,stu[i].sex.length());
out1.write(stu[i].no,0,stu[i].no.length());
out1.write('\r');
out1.write('\n');
System.out.println(stu[i].name+stu[i].sex+stu[i].no);
}
out1.close();
out.close();
}
catch(IOException ioe)
{
System.out.println(ioe);
}
}
else if (e.getActionCommand()=="数据输入")
{
Dialog d=new Dialog(f,"数据输入",true);
TextField tf1,tf2,tf3;
Button b1,b2,b3,b4;
d.setLayout(new GridLayout(5,2));
d.add(new Label("姓名"));
d.add(tf1=new TextField(8));
d.add(new Label("性别"));
d.add(tf2=new TextField("男",1));
d.add(new Label("学号"));
d.add(tf3=new TextField(8));
d.add(b1=new Button("前一条"));
d.add(b2=new Button("后一条"));
d.add(b3=new Button("确定"));
d.add(b4=new Button("取消"));
Handler1 handler1=new Handler1();
b1.addActionListener(handler1);
b2.addActionListener(handler1);
b3.addActionListener(handler1);
b4.addActionListener(handler1);
handler1.d=d;
handler1.stu=stu;
handler1.num=0;
handler1.max=0;
handler1.tf1=tf1;
handler1.tf2=tf2;
handler1.tf3=tf3;
d.pack();
d.setVisible(true);
}
}
}
class Handler1 implements ActionListener {
Dialog d;
TextField tf1,tf2,tf3;
Student stu[];
static int num,max;
public void actionPerformed(ActionEvent e){
if (e.getActionCommand()=="后一条" && num < stu.length-1 )
{
stu[num].name=tf1.getText();
stu[num].sex=tf2.getText();
stu[num].no=tf3.getText();
if (num >=max)
{
tf1.setText("");
tf2.setText("男");
tf3.setText("");
num+=1;
max+=1;
}
else
{
num+=1;
tf1.setText(stu[num].name);
tf2.setText(stu[num].sex);
tf3.setText(stu[num].no);
}
}
else if (e.getActionCommand()=="确定")
{
stu[num].name=tf1.getText();
stu[num].sex=tf2.getText();
stu[num].no=tf3.getText();
d.setVisible(false);
}
}
}
class Student{
String name;
String sex;
String no;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -