Java GUI编程 简单的学号 姓名输入框,并可导入保存在txt文档中

简单 Java GUI编程 专栏收录该内容
2 篇文章 0 订阅

(java GUI使用Frame作为顶层容器,简单的学号 姓名输入框,并可导入保存在txt文档中
在这里插入图片描述
下面是源代码:

import java.awt.*;
import java.awt.event.*;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

public class test2 {
    public static void main(String [] args){
        new TFrame().launchFrame();
    }
}
class TFrame extends Frame{
    TextField num,name;
    Map<String,String>  ppt = new HashMap();   //设置一个全局的Map 命名为ppt 以便管理学生学号 姓名
    public void launchFrame(){
        num = new TextField(10);           //输入框位置
        name = new TextField(15);         //输入框位置
        Label a1 = new Label("学号");    //设定 :“学号”标签
        Label a2 = new Label("姓名");   //“姓名”标签
        Button button1 = new Button("添加"); 
        Button button2 = new Button("导出");
        button1.addActionListener(new Montitor1());
        button2.addActionListener(new Montitor2());
        setLayout(new FlowLayout());
        add(a1);
        add(num);
        add(a2);
        add(name);
        add(button1);  //添加按钮1
        add(button2);  //添加按钮2
        pack();
        setVisible(true);   //设置可见
        this.addWindowListener(new WindowsMonitor()); // 窗口事件监听(跟最下面的监听搭配可以不要)
    }
private class Montitor1 implements ActionListener{  //对"添加"的监听  并作出反应
    public void actionPerformed(ActionEvent e) {
      String s1 =num.getText();    
      String s2 =name.getText();
      ppt.put("学号:" + s1 + " "," 姓名:" + s2);  //加入map ppt中
      System.out.println(ppt);
    }

}
private class Montitor2 implements ActionListener{  //对"导入"的监听  并作出反应
        public  void actionPerformed(ActionEvent m) {
            String file = "/Users/wangzeyi/Desktop/student.txt"; //保存路径(这是我的这个txt文件的路径。找一下你自己的放这儿就行)
            //String m1 = num.getText();  没什么用 才发现 截图里面的没用上
            //String m2 = name.getText();
            try {
                BufferedWriter bw = new BufferedWriter(new FileWriter(file)); //新建  缓冲区
                bw.write(String.valueOf(ppt));  //直接把“添加”监听里存好的map写入txt文档
                bw.close();                     //关闭文档
            } catch (IOException e) {
                e.printStackTrace();
            }
            num.setText("");   //清空学号输入框
            name.setText("");  //清空姓名输入框
        }

}
class WindowsMonitor extends WindowAdapter{   //对关闭文本框的监听 并作出反应  (没有用的话可以不要)
        public void windowClosing(WindowEvent e){
            setVisible(false);
            System.exit(0);
        }
}
}
  • 3
    点赞
  • 0
    评论
  • 18
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 像素格子 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值