java学生管理系统(swing) (没用数据库,附源码)
如果有需要带数据库的,请小伙伴移步至:java+mysql学生管理系统(附源码,无套路)
事先声明: 程序简易,只是为了记录学习过程,大佬们勿喷,要实在忍不住,麻烦各位大佬轻点喷就是!
但是如果有任何问题,欢迎大家评论,望共同进步!
密码在提示里
这是第一段代码
import javax.swing.*;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.lang.reflect.Array;
import java.util.ArrayList;public class Gradation {public static void main(String[] args) {JFrame jf = new JFrame("登录");jf.setBounds(300,200,300,150);jf.setLocationRelativeTo(null);jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);//绝对布局JPanel panel = new JPanel(null);JLabel jl = new JLabel("账户");jl.setBounds(10,10,200,18);final JTextField name = new JTextField();name.setBounds(80,10,150,18);JLabel jl2 = new JLabel("密码");jl2.setBounds(10,50,200,18);final JPasswordField password = new JPasswordField();password.setBounds(80,50,150,18);panel.add(jl);panel.add(name);panel.add(jl2);panel.add(password);//创建一个按钮,点击后获取密码框中输入的密码JButton jb = new JButton("登录");jb.setBounds(80,80,60,18);jb.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {if(name.getText().trim().length() == 0||new String (password.getPassword()).trim().length() == 0){JOptionPane.showMessageDialog(null,"信息错误");}else if(name.getText().trim().equals("66")&&new String(password.getPassword()).trim().equals("six")){new Demo();jf.dispose(); //先关闭第一个窗口}elseJOptionPane.showMessageDialog(null,"登录失败,账户或密码错误");}});panel.add(jb);JButton jb2 = new JButton("提示");jb2.setBounds(170,80,60,18);jb2.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {JOptionPane.showMessageDialog(null,"账号:66\n密码:six");}});panel.add(jb2);jf.setContentPane(panel);jf.setVisible(true);}}
.
.
.
.
.
这是第二段代码
import javax.swing.*;import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.*;public class Demo {private JFrame jf2;private JTextArea jTextArea; //显示信息的文本框private File file;private JPanel contentPane,found_panel,panel2; //面板private JLabel j1,j2,j3,j4; //四个名称标签private JTextField jT_1,jT_2,jT_3,jT_4; //对应的四个输入框private JButton jb_1,jb_2,found_back,found_reserve;private JMenuBar menuBar;private JMenu inforMenu,aboutMenu;private JMenuItem newMenItem,deleteMenItem,foundMenItem,changeMenItem,about_son;public Demo() {//设置第二个窗口jf2 = new JFrame("LS");jf2.setSize(500, 300);jf2.setLocationRelativeTo(null);jf2.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);// 创建底部面板contentPane = new JPanel();// 创建“查询”所需面板found_panel = new JPanel();// 创建上层面板panel2 = new JPanel(new GridLayout(5,2));// 上层面板中的“新建”内容j1 = new JLabel("姓名");jT_1 = new JTextField();j2 = new JLabel("学号");jT_2 = new JTextField();j3 = new JLabel("年龄");jT_3 = new JTextField();j4 = new JLabel("专业");jT_4 = new JTextField();panel2.add(j1);panel2.add(jT_1);panel2.add(j2);panel2.add(jT_2);panel2.add(j3);panel2.add(jT_3);panel2.add(j4);panel2.add(jT_4);jb_1 = new JButton("提交");jb_2 = new JButton("返回");panel2.add(jb_1);panel2.add(jb_2);// “查询"的页面jTextArea = new JTextArea();//jTextArea.setBounds(10,10,30,30);// 返回开始界面按钮found_back = new JButton("返回");//found_back.setBounds(20,100,20,20);// 保存更改信息按钮found_reserve = new JButton("保存");found_panel.add(jTextArea);found_panel.add(found_back);found_panel.add(found_reserve);// 信息存入txt文件中file = new File("d:\\学生信息.txt");if(!(file.exists())) //如果不存在此txt文件,就新建一个{try{File dir = new File(file.getParent());dir.mkdirs();file.createNewFile();}catch (IOException el){el.printStackTrace();}}try{BufferedReader read = new BufferedReader(new FileReader(file));String str = null;while((str = read.readLine()) != null){jTextArea.append(str+ "\n");}read.close();}catch (FileNotFoundException el){el.printStackTrace();}catch (IOException el){el.printStackTrace();}/** 创建一个菜单栏*/menuBar = new JMenuBar();/** 创建一级菜单*/inforMenu = new JMenu("信息管理");aboutMenu = new JMenu("关于");// 一级菜单添加到菜单栏menuBar.add(inforMenu);menuBar.add(aboutMenu);newMenItem = new JMenuItem("新建");deleteMenItem = new JMenuItem("全部删除");changeMenItem = new JMenuItem("修改"); //没做这块foundMenItem = new JMenuItem("查询");about_son = new JMenuItem("再关于");// 向“信息管理”中添加子菜单inforMenu.add(newMenItem);inforMenu.add(deleteMenItem);inforMenu.add(changeMenItem);inforMenu.add(foundMenItem);aboutMenu.add(about_son);Event_do();contentPane.add(menuBar); //将整个JMenuBar加到panel2上JLabel label = new JLabel("欢迎使用学生管理系统");label.setFont(new Font(Font.DIALOG,Font.BOLD,23)); //设置字体大小label.setForeground(Color.orange); //设置字体颜色contentPane.add(label);jf2.setContentPane(contentPane);jf2.setVisible(true);}public void output(){String str = jTextArea.getText();try{FileOutputStream out = new FileOutputStream(file);byte[] Byte = str.getBytes(); //将字符串转化成字节数组out.write(Byte,0,Byte.length);}catch (IOException e){e.printStackTrace();}}public void Event_do(){// 设置 "新建" 子菜单被点击的监听器newMenItem.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {contentPane.removeAll();contentPane.add(panel2);contentPane.validate();contentPane.repaint();jT_1.setText("");jT_2.setText("");jT_3.setText("");jT_4.setText("");}});// 设置 "删除" 子菜单被点击的监听器deleteMenItem.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {jTextArea.setText("");output();}});// 设置 "修改" 子菜单被点击的监听器changeMenItem.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {JOptionPane.showMessageDialog(null,"想改?做梦!自己滚去改");}});// 设置 "查询" 子菜单被点击的监听器foundMenItem.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {contentPane.removeAll();contentPane.add(found_panel);contentPane.validate();contentPane.repaint();}});// “查询”界面的返回 “按钮” 的监听器found_back.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {contentPane.removeAll();contentPane.add(menuBar);contentPane.validate();contentPane.repaint();}});// “查询”界面的返回 “保存” 的监听器found_back.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {//output();}});// 新建的中的“添加”的监听事件jb_1.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {jTextArea.append(jT_1.getText()+"\t"+jT_2.getText()+"\t"+jT_3.getText()+"\t"+jT_4.getText()+"\n");output();contentPane.removeAll();contentPane.add(menuBar);contentPane.validate();contentPane.repaint();}});// 新建的中的“返回”的监听事件jb_2.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {contentPane.removeAll();contentPane.add(menuBar);contentPane.validate();contentPane.repaint();}});about_son.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {JOptionPane.showMessageDialog(null,"仅供点击,请勿当真!");}});}}
java学生管理系统(swing) (没用数据库,附源码)相关推荐
- Java毕设项目茶店订购管理系统2021计算机(附源码+系统+数据库+LW)
Java毕设项目茶店订购管理系统2021计算机(附源码+系统+数据库+LW) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行) ...
- java计算机毕业设计高校学生综合素质测评系统(附源码、数据库)
java计算机毕业设计高校学生综合素质测评系统(附源码.数据库) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Ecli ...
- java计算机毕业设计高校学生资助管理信息系统(附源码、数据库)
java计算机毕业设计高校学生资助管理信息系统(附源码.数据库) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Ecli ...
- 基于JAVA学生用品采购系统计算机毕业设计源码+系统+数据库+lw文档+部署
基于JAVA学生用品采购系统计算机毕业设计源码+系统+数据库+lw文档+部署 基于JAVA学生用品采购系统计算机毕业设计源码+系统+数据库+lw文档+部署 本源码技术栈: 项目架构:B/S架构 开发语 ...
- 计算机毕业设计Java课堂管理系统小程序用户端(源码+mysql数据库+系统+lw文档)
计算机毕业设计Java课堂管理系统小程序用户端(源码+mysql数据库+系统+lw文档) 计算机毕业设计Java课堂管理系统小程序用户端(源码+mysql数据库+系统+lw文档) 本源码技术栈: 项目 ...
- 计算机毕业设计Java冰鲜鱼管理系统的设计与实现(源码+系统+mysql数据库+lw文档
计算机毕业设计Java冰鲜鱼管理系统的设计与实现(源码+系统+mysql数据库+lw文档 计算机毕业设计Java冰鲜鱼管理系统的设计与实现(源码+系统+mysql数据库+lw文档) 本源码技术栈: 项 ...
- 基于JAVA学生住宿管理平台计算机毕业设计源码+系统+数据库+lw文档+部署
基于JAVA学生住宿管理平台计算机毕业设计源码+系统+数据库+lw文档+部署 基于JAVA学生住宿管理平台计算机毕业设计源码+系统+数据库+lw文档+部署 本源码技术栈: 项目架构:B/S架构 开发语 ...
- java计算机毕业设计婚恋网站(附源码、数据库)
java计算机毕业设计婚恋网站(附源码.数据库) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(Inte ...
- java计算机毕业设计网上拍卖系统(附源码、数据库)
java计算机毕业设计网上拍卖系统(附源码.数据库) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(In ...
最新文章
- R构建Kmeans聚类模型
- 【Android 逆向】ART 脱壳 ( DexClassLoader 脱壳 | ART 虚拟机下 DexClassLoader 类加载器脱壳点总结 )
- 文本编辑器创建菜单栏
- Cannot load 32-bit SWT libraries on 64-bit JVM
- Windows上使用gitbook制作电子书
- QT如何设置应用程序的图标
- Caffe应用篇----文件格式转换
- 7-5 输出字符串中出现的字符 (20 分)
- 桥牌笔记:挤牌的条件之一,调整赢墩到只差一墩
- (二) redfish简单信息获取
- 【Pix4d精品教程】Pix4d模型成果导出OSGB并加载OSGB到EPS进行三维测图完美案例教程
- 数据包络分析法(DEA) R实现
- Ilasm And Ildasm Practice
- 基于javaweb的房屋租赁系统(前端+后端)
- IDEA执行hadoop相关报错xxx from xxx is not a valid DFS filename.
- django框架中嵌入容联云sdk实现短信发送接口
- ubuntu18.04 opencv 获取摄像头 (C++/python) 双目摄像头
- perl中DBD-oracle安装,perl DBD :: Oracle模块安装
- [数据分析师]数据分析看中国展览业的数字化应用发展
- javase 双色球选7球 红球在【1-36】之间,选出6个,且不能重复 篮球在【1-16】之间,选出1个