package experiment2;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTextField;
public class StudentAddWindow {
public StudentAddWindow(PreparedSQL ps) {
//创建窗口
JFrame f = new JFrame("学生管理");
//创建面板
JPanel p1 = new JPanel();
JPanel p2 = new JPanel();
JPanel p3 = new JPanel();
JPanel p4 = new JPanel();
JPanel p5 = new JPanel();
JPanel p6 = new JPanel();
JPanel p7 = new JPanel();
JPanel p8 = new JPanel();
f.add(p1);
f.add(p2);
f.add(p3);
f.add(p4);
f.add(p5);
f.add(p6);
f.add(p7);
f.add(p8);
//添加文本组件
JLabel l1 = new JLabel("Sno: ");
JLabel l2 = new JLabel("Sname: ");
JLabel l3 = new JLabel("Sex: ");
JLabel l4 = new JLabel("Sage :");
JLabel l5 = new JLabel("phone :");
JLabel l6 = new JLabel(" QQ :");
JLabel l7 = new JLabel(" Email :");
//添加文本框
JTextField t1 = new JTextField(15);
JTextField t2 = new JTextField(15);
JTextField t3 = new JTextField(15);
JTextField t4 = new JTextField(15);
JTextField t5 = new JTextField(15);
JTextField t6 = new JTextField(15);
//添加选择按钮
JRadioButton JR1= new JRadioButton("男");
JRadioButton JR2= new JRadioButton("女");
// 一定要把JR1,JR2放入到一个ButtonGroup里面
ButtonGroup bg = new ButtonGroup();
bg.add(JR1);
bg.add(JR2);
//加入各个组件
p1.add(l1);
p1.add(t1);
p2.add(l2);
p2.add(t2);
p3.add(l3);
p3.add(JR1);
p3.add(JR2);
p4.add(l4);
p4.add(t3);
p5.add(l5);
p5.add(t4);
p6.add(l6);
p6.add(t5);
p7.add(l7);
p7.add(t6);
//为窗体添加按钮组件,比如button。先new组件button
JButton b1 = new JButton("确认");
JButton b2 = new JButton("取消");
p8.add(b1);
p8.add(b2);
// 设置布局为流式布局,默认居中,可以设置
f.setLayout(new FlowLayout(FlowLayout.LEFT));
//为b1按钮设置回车
f.getRootPane().setDefaultButton(b1);
//为文本框添加键盘监听事件,使只能输入对应正确的格式
t1.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent e) {
//这个是键入某个键的方法
char c = e.getKeyChar();
if (!(c >= '0' && c <= '9')) {
e.consume();
}
}
});
t2.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent e) {
//这个是键入某个键的方法
char c = e.getKeyChar();
if (c >= '0' && c <= '9'){
e.consume();
}
}
});
t3.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent e) {
//这个是键入某个键的方法
char c = e.getKeyChar();
if (!(c >= '0' && c <= '9')) {
e.consume();
}
}
});
t4.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent e) {
//这个是键入某个键的方法
char c = e.getKeyChar();
if (!(c >= '0' && c <= '9')) {
e.consume();
}
}
});
t5.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent e) {
//这个是键入某个键的方法
char c = e.getKeyChar();
if (!(c >= '0' && c <= '9')) {
e.consume();
}
}
});
//为b1按钮"确定"添加监听事件
b1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String sID = t1.getText();
String sname = t2.getText();
String age = t3.getText();
String phone = t4.getText();
boolean boolean1 = JR1.isSelected();
boolean boolean2 = JR2.isSelected();
if(boolean1 == false && boolean2 == false) {
JOptionPane.showMessageDialog(null, "未选择性别!!!");
return;
}else if(sID.length()!=12) {
JOptionPane.showMessageDialog(null, "该学生学号格式不对,请重新输入!!!");
return;
}else if(sID.equals("")||sname.equals("")){
JOptionPane.showMessageDialog(null, "录入的学生学号或姓名为空!!!\n\n请重新输入");
return;
}else if(phone.length() != 11) {
JOptionPane.showMessageDialog(null, "该学生手机昊码格式不对,请重新输入!!!");
return;
}else if(age.length() > 2) {
JOptionPane.showMessageDialog(null, "该学年龄格式不对,请重新输入!!!");
return;
}
int flag = 0;
for(int i = 0;i<StudentTestWindow.table.getRowCount();i++) {
if(t1.getText().equals(StudentTestWindow.table.getValueAt(i,0))){
JOptionPane.showMessageDialog(null, "该学生已存在,请重新添加!!!");
flag = 1;
return;
}
}
if(flag != 1) {
StudentTestWindow.tableModel.addRow(new Object[]{t1.getText(),t2.getText(),
JR1.isSelected()?JR1.getText():JR2.getText(),t3.getText(),
t4.getText(),t5.getText(),t6.getText()});
ps.add(Long.parseLong(t1.getText()),t2.getText(), JR1.isSelected()?JR1.getText():JR2.getText(),
Integer.parseInt(t3.getText()),Long.parseLong(t4.getText()),Long.parseLong(t5.getText()),t6.getText());
}
f.setVisible(false);
}
});
//为b2按钮''取消''添加监听事件
b2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
t1.setText("");
t2.setText("");
bg.clearSelection();
t3.setText("");
t4.setText("");
t5.setText("");
t6.setText("");
}
});
f.addWindowListener(new WindowAdapter() {
//alt+shift+s选择重写方法
@Override
public void windowClosing(WindowEvent e) {
//触发执行事件处理方式,假设输出关闭
f.setVisible(false);
}
});
// 显示JFrame
f.setVisible(true);
//f.show();过时方法,提示用setVisble
//设置窗体大小
f.setSize(350, 450);
//在屏幕中间显示(居中显示)
f.setLocationRelativeTo(null);
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
1、进入Eclipse环境,新建一个Java Project; 2、编写程序实现显示功能选项,创建GUI界面,显示所有学生信息,实现学生添加界面 3、编写程序,实现数据查询功能,加载数据功能,读取数组内容,生成对象,GUI界面显示 4、编写程序实现添加学生功能,创建界面,提示用户输入内容,生成实体类,放入数组; 5、编写程序实现学生信息删除,从数组中移除相应数据; 6、编写程序实现学生信息修改,从数组中读取学生信息显示在GUI界面中,通过界面修改信息,并将修改内容存放数组; 7、 1).将之前存储数据的位置换为数据库 2).增删改查语句在数据库中运行成功 3).可以使用Statement语句或PreparedStatement语句 4).主函数,用于选择下一步要执行的操作 5).连接方法,连接数据库的4个属性 6).关闭连接 方法,断开数据库连接
资源推荐
资源详情
资源评论
收起资源包目录
代码-MySQL版.zip (5个子文件)
StudentUpdataWindow.java 6KB
DBConnection_MySql.java 974B
StudentAddWindow.java 6KB
PreparedSQL.java 6KB
StudentTestWindow.java 5KB
共 5 条
- 1
程序员Ale-阿乐
- 粉丝: 1w+
- 资源: 99
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
- 5
- 6
前往页