forked from kongxin-github/Java_Library_Management_System
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathAdminAccount.java
More file actions
124 lines (113 loc) · 3.22 KB
/
AdminAccount.java
File metadata and controls
124 lines (113 loc) · 3.22 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
package view;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Arrays;
import java.util.Vector;
import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JLayeredPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.JTableHeader;
import database.ConnectDatabase;
/**
* 账户信息界面
*
*/
public class AdminAccount extends JFrame {
/*
* 背景图片 表格
*/
// 面板
private JPanel jPanel = new JPanel();
// 分层窗格
private JLayeredPane jLayeredPane = new JLayeredPane();
// 标签
private JLabel jLabel = new JLabel("账户信息");
// 字体
private Font font = new Font("宋体", Font.BOLD, 40);
// 表格
public DefaultTableModel model = new DefaultTableModel();
public AdminAccount() {
// 改变背景图片
Icon i = new ImageIcon("img\\tabletop.jpg");
JLabel Label = new JLabel(i);
Label.setBounds(0, 0, 800, 100);
setLayout(null);
setSize(800, 600);
setLocationRelativeTo(null);
jLabel.setFont(font);
jLabel.setBounds(315, 80, 400, 100);
jPanel.add(jLabel);
// 表格
model.addColumn("用户名", new Vector<Integer>());
model.addColumn("学号", new Vector<Integer>());
model.addColumn("姓名", new Vector<Integer>());
model.addColumn("是否为管理员", new Vector<Integer>());
JTable jTable = new JTable(model);
JScrollPane pane = new JScrollPane(jTable);
pane.setBounds(80, 160, 640, 350);
jLayeredPane.add(pane);
JTableHeader head = jTable.getTableHeader();
// 设置表头的大小
head.setPreferredSize(new Dimension(head.getWidth(), 30));
// 设置表头字体大小
head.setFont(new Font("宋体", Font.BOLD, 20));
// head.setForeground(Color.cyan);
head.setBackground(Color.cyan);
// 设置表格的行宽
jTable.setRowHeight(30);
// 设置表格行中字体大小
jTable.setFont(new Font("宋体", Font.ROMAN_BASELINE, 17));
/* 设置表格中的内容居中 */
DefaultTableCellRenderer renderer = new DefaultTableCellRenderer();
renderer.setHorizontalAlignment(DefaultTableCellRenderer.CENTER);
jTable.setDefaultRenderer(Object.class, renderer);
borrow(model);
jPanel.setBounds(0, 0, 800, 200);
jPanel.setOpaque(false);
jPanel.setLayout(null);
setContentPane(jLayeredPane);
setTitle("账户信息");
// 不可以改变窗体的大小
setResizable(false);
add(jPanel);
add(Label);
setVisible(true);
}
private void borrow(DefaultTableModel model) {
Connection con = ConnectDatabase.connectDB();
PreparedStatement preSql;
ResultSet rs;
String sqlStr = "select * from usertable";
try {
preSql = con.prepareStatement(sqlStr);
rs = preSql.executeQuery();
while (rs.next()) {
String user = rs.getString(1);
String studentid = rs.getString(2);
String name = rs.getString(3);
int flag = rs.getInt(5);
String admin;
if (flag == 1) {
admin = "是";
} else {
admin = "否";
}
model.addRow(new Vector<>(Arrays.asList(user, studentid, name, admin)));
}
con.close();
} catch (SQLException e) {
}
}
}