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);
}
}
程序员Ale-阿乐
- 粉丝: 1w+
- 资源: 99
最新资源
- Unity In-game Debug Console
- (3292010)Java图书管理系统(源码)
- 新建 Microsoft Word 文档
- (176102016)MATLAB代码:考虑灵活性供需不确定性的储能参与电网调峰优化配置 关键词:储能优化配置 电网调峰 风电场景生成 灵活性供需不
- SINAMICS S120驱动第三方直线永磁同步电机系列视频-配置和优化.mp4
- (175601006)51单片机交通信号灯系统设计
- Starter SINAMICS S120驱动第三方直线永磁同步电机系列视频-调试演示.mp4
- (174755032)抽烟、烟雾检测voc数据集
- 基于滑膜控制的差动制动防侧翻稳定性控制,上层通过滑膜控制产生期望的横摆力矩,下层根据对应的paper实现对应的制动力矩分配,实现车辆的防侧翻稳定性控制,通过通过carsim和simulink联合仿真
- 伺服系统基于陷波滤波器双惯量伺服系统机械谐振抑制matlab Simulink仿真 1.模型简介 模型为基于陷波滤波器的双惯量伺服系统机械谐振抑制仿真,采用Matlab R2018a Simul
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
- 1
- 2
- 3
- 4
- 5
- 6
前往页