package 界面;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.SQLException;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.DefaultTableModel;
public class T implements ActionListener {
JFrame frame;
JPanel panel_b;// 按钮面板
JButton jb_q;// 管理题库按钮
JButton jb_p;// 管理组卷按钮
JButton jb_s;// 查看学生成绩按钮
JButton jb_pw;// 更改密码按钮
JPanel p;// 功能面板,以下3面板函数为其子面板
JPanel p_q() // 管理题目面板
{
JPanel panel_s = new JPanel();
panel_s.setBackground(Color.orange);
panel_s.setLayout(new BorderLayout(1, 1));
// 顶部信息条
panel_s.add(BorderLayout.NORTH, new JLabel("管理题目"));
// 中部表格面板
JScrollPane scrollPane = new JScrollPane();
String[][] playerInfo = null;
try {
playerInfo = sql.show.all("question");
} catch (ClassNotFoundException | SQLException e) {
} // usershow是sql函数
String Names[] = { "题号", "题目", "A", "B", "C", "D", "答案", "题型", "科目" };// 创建一个只有表头的表格模型
DefaultTableModel defaultTableModel = new DefaultTableModel(null, Names);
// 将playerInfo中非空元素插入表中
for (String[] x : playerInfo) {
if (x[0] != null) {
defaultTableModel.addRow(x);
}
}
JTable table = new JTable(defaultTableModel);
// 设置单元格中的文字居中 非表头单元格
DefaultTableCellRenderer r = new DefaultTableCellRenderer();
r.setHorizontalAlignment(JLabel.CENTER);
table.setDefaultRenderer(Object.class, r);
scrollPane.setViewportView(table);
panel_s.add(BorderLayout.CENTER, scrollPane);
// 底部按钮板
JPanel panel_s_b = new JPanel();
// 添加按钮及其功能
JButton adds = new JButton("添加");
adds.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e1) {
System.out.print("add");
JFrame ad = new JFrame("添加");
ad.setLayout(new BorderLayout(1, 1));
ad.setSize(500, 100);
ad.setLocationRelativeTo(null);
ad.setResizable(false);
JLabel jl1 = new JLabel("输入添加的信息");
ad.add(BorderLayout.NORTH, jl1);
// 信息文本框面板
JPanel pjtx = new JPanel();
JTextField no = new JTextField("题号");
pjtx.add(no);
JTextField con = new JTextField("内容");
pjtx.add(con);
JTextField a = new JTextField("A");
pjtx.add(a);
JTextField b = new JTextField("B");
pjtx.add(b);
JTextField c = new JTextField("C");
pjtx.add(c);
JTextField d = new JTextField("D");
pjtx.add(d);
JTextField an = new JTextField("答案");
pjtx.add(an);
JTextField type = new JTextField("题型");
pjtx.add(type);
JTextField cname = new JTextField("科目");
pjtx.add(cname);
ad.add(pjtx);
JButton qr = new JButton("确认");
qr.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e1) {
try {
sql.add.question(new String(no.getText()), new String(con.getText()),
new String(a.getText()), new String(b.getText()), new String(c.getText()),
new String(d.getText()), new String(an.getText()), new String(type.getText()),
new String(cname.getText()));
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
}
}
});
ad.add(BorderLayout.SOUTH, qr);
ad.setVisible(true);
}
});
panel_s_b.add(adds);
// 更改按钮及其功能
JButton up = new JButton("更改");
up.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e1) {
System.out.print("up");
JFrame up = new JFrame("更改");
up.setLayout(new BorderLayout(1, 1));
up.setSize(500, 100);
up.setLocationRelativeTo(null);
up.setResizable(false);
JLabel jl1 = new JLabel("输入修改后的全部的信息");
up.add(BorderLayout.NORTH, jl1);
// 信息文本框面板
JPanel pjtx = new JPanel();
JTextField no = new JTextField("题号");
pjtx.add(no);
JTextField con = new JTextField("内容");
pjtx.add(con);
JTextField a = new JTextField("A");
pjtx.add(a);
JTextField b = new JTextField("B");
pjtx.add(b);
JTextField c = new JTextField("C");
pjtx.add(c);
JTextField d = new JTextField("D");
pjtx.add(d);
JTextField an = new JTextField("答案");
pjtx.add(an);
JTextField type = new JTextField("题型");
pjtx.add(type);
JTextField cname = new JTextField("科目");
pjtx.add(cname);
up.add(pjtx);
JButton qr = new JButton("确认");
qr.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e1) {
try {
sql.delete.delete("question", new String(no.getText()));
sql.add.question(new String(no.getText()), new String(con.getText()),
new String(a.getText()), new String(b.getText()), new String(c.getText()),
new String(d.getText()), new String(an.getText()), new String(type.getText()),
new String(cname.getText()));
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
}
}
});
up.add(BorderLayout.SOUTH, qr);
up.setVisible(true);
}
});
panel_s_b.add(up);
// 删除按钮及其功能
JButton delete = new JButton("删除");
delete.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e2) {
JFrame delete = new JFrame("删除");
delete.setLayout(new BorderLayout(1, 1));
delete.setSize(500, 100);
delete.setLocationRelativeTo(null);
delete.setResizable(false);
JLabel jl1 = new JLabel("输入删除的号码");
delete.add(BorderLayout.NORTH, jl1);
JTextField jtf = new JTextField("");
delete.add(jtf);
JButton qr = new JButton("确认");
qr.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e1) {
try {
sql.delete.delete("question", new String(jtf.getText()));
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
}
}
});
delete.add(BorderLayout.SOUTH, qr);
delete.setVisible(true);
}
});
panel_s_b.add(delete);
panel_s.add(BorderLayout.SOUTH, panel_s_b);
return panel_s;
}
JPanel p_p()// 管理组卷面板
{
JPanel panel_s = new JPanel();
panel_s.setBackground(Color.red);
panel_s.setLayout(new BorderLayout(1, 1));
panel_s.add(BorderLayout.NORTH, new JLabel("管理组卷"));
// 表格面板
JScrollPane scrollPane = new JScrollPane();
String[][] playerInfo = null;
try {
playerInfo = sql.show.all("paper");// usershow是sql函数
} catch (ClassNotFoundException | SQLException e) {
}
String Names[] = { "组卷号", "组卷名", "科目" };
// 创建一个只有表头的表格模型
DefaultTableModel defaultTableModel = new DefaultTableModel(null, Names);
// 将playerInfo中非空元素插入表中
for (String[] x : playerInfo) {
if (x[0] != null) {
defaultTableModel.addRow(x);
}
}
JTable table = new JTable(defaultTableModel);
// 设置单元格中的文字居中 非表头单元格
DefaultTableCellRenderer r = new DefaultTableCellRenderer();
r.setHorizontalAlignment(JLabel.CENTER);
table.setDefaultRenderer(Object.class, r);
scrollPane.setViewportView(table);
panel_s.add(BorderLayout.CENTER, scrollPane);
//
// 底部按钮板
JPanel panel_s_b = new JPanel();
// 添加按钮及其功能
JButton adds = new JButton("添加");
adds.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e1) {
System.out.print("add");
JFrame ad = new JFrame("添加");
ad.setLayout(new BorderLayout(1, 1));
ad.setSize(500, 100);