学生管理系统简单的实现,供初学Java Swing同学学习使用。
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
|
import java.awt.Dimension; import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPasswordField; import javax.swing.JTextField; //主类,程序的入口 public class begin { public static void main(String[] args) { new begindemo( "这是我的管理系统" ); } } class begindemo extends JFrame { //登录的用户名和密码 private final String userName = "123" ; private final String password = "123" ; //声明屏幕的宽高,程序窗口的宽高 private int windowWidth; private int windowHeight; private int screenSizeWidth; private int screenSizeHeight; //构造函数, public begindemo(String title) { super (title); //设置标题 this .setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //设置能关闭窗口 this .setSize( 600 , 600 ); //设置窗口的大小 this .setLayout( null ); //设置程序默认布局格式为空,以便于后期自己简单的设置布局 this .setResizable( false ); //设置不可缩放 init(); //执行初始化函数(将用户名密码等组件加入到面板中) this .setVisible( true ); //使程序可见 } public void init() { //给屏幕的宽度高度,程序窗口的宽度高度赋值 Dimension dimension = Toolkit.getDefaultToolkit().getScreenSize(); screenSizeWidth = ( int ) dimension.getWidth(); screenSizeHeight = ( int ) dimension.getHeight(); windowWidth = this .getWidth(); windowHeight = this .getHeight(); //设置程序窗口的位置为屏幕的正中央 this .setLocation(screenSizeWidth / 2 - windowWidth / 2 , screenSizeHeight / 2 - windowHeight / 2 ); // 声明姓名,密码的标签 JLabel username_label = new JLabel( "姓名" ); JLabel password_label = new JLabel( "密码" ); // 声明姓名输入框和密码输入框 final JTextField user_field = new JTextField(); final JPasswordField password_field = new JPasswordField(); //声明登录按钮 JButton login_btn = new JButton( "登录" ); //设置各个标签和输入框的大小和位置 username_label.setBounds( 150 , 100 , 100 , 50 ); password_label.setBounds( 150 , 200 , 100 , 50 ); user_field.setBounds( 200 , 100 , 300 , 50 ); password_field.setBounds( 200 , 200 , 300 , 50 ); login_btn.setBounds( 300 , 300 , 100 , 50 ); this .add(username_label); this .add(password_label); this .add(user_field); this .add(password_field); this .add(login_btn); //登录按钮的监听器 login_btn.addActionListener( new ActionListener() { @SuppressWarnings ( "deprecation" ) @Override //当按钮被单击时自动调动这个方法 public void actionPerformed(ActionEvent event) { //如果用户名和密码都是123,那么弹出对话框显示登录成功,并且开启另一个主框架(主页) if (user_field.getText().equals(userName) && password_field.getText().equals(password)) { JOptionPane.showMessageDialog( null , "登录成功" , "Login" , JOptionPane.INFORMATION_MESSAGE); //声明主页 JFrame home_page = new JFrame( "主页" ); //给主页设置位置 home_page.setLocation(screenSizeWidth / 2 - windowWidth / 2 + 50 , screenSizeHeight / 2 - windowHeight / 2 + 50 ); //给主页设置大小 home_page.setSize(windowWidth, windowHeight); //设置主页能够关闭,并且登录成功后将登录页面隐藏 home_page.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); home_page.setVisible( true ); setVisible( false ); //登录页面隐藏 } else //反之,登录不成功,重新登录 { JOptionPane.showMessageDialog( null , "登录失败,请重新登录" , "Login" , JOptionPane.INFORMATION_MESSAGE); //设置输入框的内容为空,让用户重新输入 user_field.setText( "" ); password_field.setText( "" ); } } }); } } |
添加了一个学生的类,方便以后使用
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
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
|
package demo; import java.awt.Dimension; import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPasswordField; import javax.swing.JTextField; //主类,程序的入口 public class begin { public static void main(String[] args) { new begindemo( "这是我的管理系统" ); new student(); } } class begindemo extends JFrame { //登录的用户名和密码 private final String userName = "123" ; private final String password = "123" ; //声明屏幕的宽高,程序窗口的宽高 private int windowWidth; private int windowHeight; private int screenSizeWidth; private int screenSizeHeight; //构造函数, public begindemo(String title) { super (title); //设置标题 this .setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //设置能关闭窗口 this .setSize( 600 , 600 ); //设置窗口的大小 this .setLayout( null ); //设置程序默认布局格式为空,以便于后期自己简单的设置布局 this .setResizable( false ); //设置不可缩放 init(); //执行初始化函数(将用户名密码等组件加入到面板中) this .setVisible( true ); //使程序可见 } public void init() { //给屏幕的宽度高度,程序窗口的宽度高度赋值 Dimension dimension = Toolkit.getDefaultToolkit().getScreenSize(); screenSizeWidth = ( int ) dimension.getWidth(); screenSizeHeight = ( int ) dimension.getHeight(); windowWidth = this .getWidth(); windowHeight = this .getHeight(); //设置程序窗口的位置为屏幕的正中央 this .setLocation(screenSizeWidth / 2 - windowWidth / 2 , screenSizeHeight / 2 - windowHeight / 2 ); // 声明姓名,密码的标签 JLabel username_label = new JLabel( "姓名" ); JLabel password_label = new JLabel( "密码" ); // 声明姓名输入框和密码输入框 final JTextField user_field = new JTextField(); final JPasswordField password_field = new JPasswordField(); //声明登录按钮 JButton login_btn = new JButton( "登录" ); //设置各个标签和输入框的大小和位置 username_label.setBounds( 150 , 100 , 100 , 50 ); password_label.setBounds( 150 , 200 , 100 , 50 ); user_field.setBounds( 200 , 100 , 300 , 50 ); password_field.setBounds( 200 , 200 , 300 , 50 ); login_btn.setBounds( 300 , 300 , 100 , 50 ); this .add(username_label); this .add(password_label); this .add(user_field); this .add(password_field); this .add(login_btn); //登录按钮的监听器 login_btn.addActionListener( new ActionListener() { @SuppressWarnings ( "deprecation" ) @Override //当按钮被单击时自动调动这个方法 public void actionPerformed(ActionEvent event) { //如果用户名和密码都是123,那么弹出对话框显示登录成功,并且开启另一个主框架(主页) if (user_field.getText().equals(userName) && password_field.getText().equals(password)) { JOptionPane.showMessageDialog( null , "登录成功" , "Login" , JOptionPane.INFORMATION_MESSAGE); //声明主页 JFrame home_page = new JFrame( "主页" ); //给主页设置位置 home_page.setLocation(screenSizeWidth / 2 - windowWidth / 2 + 50 , screenSizeHeight / 2 - windowHeight / 2 + 50 ); //给主页设置大小 home_page.setSize(windowWidth, windowHeight); //设置主页能够关闭,并且登录成功后将登录页面隐藏 home_page.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); home_page.setVisible( true ); setVisible( false ); //登录页面隐藏 } else //反之,登录不成功,重新登录 { JOptionPane.showMessageDialog( null , "登录失败,请重新登录" , "Login" , JOptionPane.INFORMATION_MESSAGE); //设置输入框的内容为空,让用户重新输入 user_field.setText( "" ); password_field.setText( "" ); } } }); } } //声明一个学生类,方便以后添加学生信息用 class student { private String name; private String sex; private int number; //学号 private String class_; //班级 private double grade; //默认构造函数,new一个对象的时候会自动调用 public student() { this .name = "" ; this .number = 0 ; this .class_ = "" ; this .grade = 0 ; System.out.println( "这是一个学生" ); } //重载的构造函数 public student(String name, int number, String class_, double grade) { this .name = name; this .number = number; this .class_ = class_; this .grade = grade; } //下面是设置名字性别学号等的函数,以后在输入学生信息存储的时候会调用,现在先写出来方便以后调用 public void setName(String name) { this .name = name; } public void setSex(String sex) { this .sex = sex; } public void setNumber( int number) { this .number = number; } public void setClass(String class_) { this .class_ = class_; } public void setGrade( double grade) { this .grade = grade; } //下面是几个得到学生姓名性别等的函数,在以后显示学生信息的时候调用它来显示学生的信息到窗口上。 public String getName() { return this .name; } public String getSex() { return this .sex; } public int getNumber() { return this .number; } public String getClass_() { return this .class_; } public double getGrade() { return this .grade; } //和上面的函数差不多用来一下设置一个学生的所有个人信息 public void setAll(String name, String sex, int number, String class_, double grade) { this .name=name; this .number=number; this .sex=sex; this .class_ = class_; this .grade = grade; } //一下得到一个学生的所有信息,就不用一个一个getName或者getSex了 public String getAll() { String output= "" ; output+=getName()+ " " +getSex()+ " " +getNumber()+ " " +getClass_()+ " " +getGrade(); return output; } } |
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:http://blog.csdn.net/sunlanchang/article/details/53202416