簡(jiǎn)單實(shí)現(xiàn)Java版學(xué)生管理系統(tǒng)
本文實(shí)例為大家分享了Java實(shí)現(xiàn)學(xué)生管理系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下
package BookDemo_1;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Test {
public static void main(String[] args) {
StudentSys stuSys=new StudentSys("學(xué)生管理系統(tǒng)");
stuSys.initWin();
}
}
class StudentSys extends JFrame{
private JPanel p1,p2,p3,combop;
private JTabbedPane tab;
private Container container;
private JButton b1,b2;
private Listener listener;
private Label nameLabel;
private Label gradeLabel;
private Label showLabel;
private JTextField textName;
private JTextField textGrade;
private TextArea showGradeArea;
/*
* 查找
* */
private Label searchLabel;
private JTextField searchText;
private JButton sBut;
private JTextField resultText;
private String[] name;
private String[] grade;
/*
* 排序
* */
private TextArea showTextArea;
private JButton sortBut;
private int countNum=0;
private JButton clearBut;
public StudentSys(String str){
super(str);
this.name=new String[100];
this.grade=new String[100];
listener = new Listener();
tab = new JTabbedPane(JTabbedPane.TOP);
//容器
container = this.getLayeredPane();
//對(duì)象化面板
combop = new JPanel();
p1 = new JPanel();
p2 = new JPanel();
p3 = new JPanel();
b1 =new JButton("確認(rèn)添加");
b2 =new JButton("撤回添加");
nameLabel =new Label("姓名");
gradeLabel =new Label("成績(jī)");
showLabel=new Label("當(dāng)前記錄為零! ");
textName =new JTextField(15);
textGrade =new JTextField(15);
showGradeArea=new TextArea();
/*
* 查找
* */
searchLabel=new Label("請(qǐng)輸入姓名:");
searchText=new JTextField(15);
sBut=new JButton("確認(rèn)查找");
resultText=new JTextField(15);
/*
* 排序
* */
showTextArea=new TextArea();
sortBut=new JButton("成績(jī)排序");
clearBut=new JButton("清空數(shù)據(jù)");
}
public void initWin(){
this.setBounds(300, 300, 500, 400);
this.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e) {
super.windowClosing(e);
System.exit(0);
}});
layoutWin();
this.setVisible(true);
}
private void layoutWin(){
tab.add(p1,"成績(jī)輸入");
tab.add(p2,"成績(jī)查詢(xún)");
tab.add(p3,"成績(jī)排序");
combop.add(new JLabel("學(xué)生信息管理系統(tǒng)"));
container.setLayout(new BorderLayout());
container.add(combop,BorderLayout.NORTH);
container.add(tab,BorderLayout.CENTER);
Container con1=new Container();
con1.setLayout(new FlowLayout());
con1.add(nameLabel);
con1.add(textName);
con1.add(gradeLabel);
con1.add(textGrade);
p1.add(con1,BorderLayout.NORTH);
p1.add(con1);
p1.add(showGradeArea);
Container con2=new Container();
con2.setLayout(new FlowLayout());
con2.add(b1);
con2.add(b2);
con2.add(showLabel);
p1.add(con2);
b1.addActionListener(listener);
b2.addActionListener(listener);
/*
* 查找布局
* */
Container con3=new Container();
con3.setLayout(new FlowLayout());
con3.add(searchLabel);
con3.add(searchText);
con3.add(sBut);
p2.add(con3,BorderLayout.NORTH);
sBut.addActionListener(listener);
p2.add(resultText);
/*
* 排序布局
* */
p3.add(showTextArea);
p3.add(sortBut);
p3.add(clearBut);
sortBut.addActionListener(listener);
clearBut.addActionListener(listener);
}
/*
* java內(nèi)部類(lèi)實(shí)現(xiàn)ActionListener接口
* */
class Listener implements ActionListener{
@Override
public void actionPerformed(ActionEvent e) {
if(e.getSource()==b1){
if((textName.getText().equals(""))||(textGrade.getText().equals(""))){
showLabel.setText("添加失敗(姓名,成績(jī)不能有空)!");
}
else{
name[countNum]=textName.getText();
grade[countNum]=textGrade.getText();
countNum++;
String area="添加成功,當(dāng)前有"+countNum+"條記錄";
showLabel.setText(area);
sortMess(false);
textName.setText("");
textGrade.setText("");
}
}
if(e.getSource()==b2){
if(countNum>0){
countNum--;
String area="撤回成功,當(dāng)前有"+countNum+"條記錄";
showLabel.setText(area);
sortMess(false);
}
}
if(e.getSource()==sBut){
if(!searchText.getText().equals("")){
searchMess(searchText.getText());
}
}
if(e.getSource()==sortBut){
sortMess(true);
}
if(e.getSource()==clearBut){
if(!showTextArea.getText().equals("")){
showTextArea.setText("");
}
}
}
public void sortMess(boolean sign) {
// TODO Auto-generated method stub
if(sign){
for(int i=0;i<countNum;i++){
for(int j=i+1;j<countNum;j++){
if(Integer.parseInt(grade[i])<Integer.parseInt(grade[j])){
String s1,s2;
s1=name[i];
s2=grade[i];
name[i]=name[j];
grade[i]=grade[j];
name[j]=s1;
grade[j]=s2;
}
}
}
}else{
if(!showGradeArea.getText().equals("")){
showGradeArea.setText("");
}
}
for(int i=0;i<countNum;i++){
String content="姓名:"+name[i]+"\t"+"成績(jī)"+grade[i];
if(sign)showTextArea.append(content+"\n");
else showGradeArea.append(content+"\n");
}
}
public void searchMess(String n) {
// TODO Auto-generated method stub
for(int i=0;i<countNum;i++){
if(name[i].equals(n)){
String content="姓名:"+name[i]+","+"成績(jī)"+grade[i];
resultText.setText(content);
return;
}
}
resultText.setText("未找到該學(xué)生!");
}
}
}
更多學(xué)習(xí)資料請(qǐng)關(guān)注專(zhuān)題《管理系統(tǒng)開(kāi)發(fā)》。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家學(xué)習(xí)Java程序設(shè)計(jì)有所幫助。
- Java+Mysql學(xué)生管理系統(tǒng)源碼
- javaWeb實(shí)現(xiàn)學(xué)生信息管理系統(tǒng)
- Java+MySQL實(shí)現(xiàn)學(xué)生信息管理系統(tǒng)源碼
- java學(xué)生管理系統(tǒng)界面簡(jiǎn)單實(shí)現(xiàn)(全)
- java學(xué)生信息管理系統(tǒng)源代碼
- Java GUI實(shí)現(xiàn)學(xué)生成績(jī)管理系統(tǒng)
- java實(shí)現(xiàn)簡(jiǎn)單的學(xué)生信息管理系統(tǒng)代碼實(shí)例
- java(swing)+ mysql實(shí)現(xiàn)學(xué)生信息管理系統(tǒng)源碼
- Java基于MySQL實(shí)現(xiàn)學(xué)生管理系統(tǒng)
- Java實(shí)現(xiàn)簡(jiǎn)易學(xué)生管理系統(tǒng)
相關(guān)文章
springboot+redis 實(shí)現(xiàn)分布式限流令牌桶的示例代碼
這篇文章主要介紹了springboot+redis 實(shí)現(xiàn)分布式限流令牌桶 ,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04
java sqlserver text 類(lèi)型字段讀取方法
有這樣一個(gè)需求,需要將原本存儲(chǔ)在數(shù)據(jù)庫(kù)中的文檔轉(zhuǎn)存至文件系統(tǒng)中,于是寫(xiě)了一個(gè)簡(jiǎn)單的程序完成此功能2012-11-11
SpringBoot項(xiàng)目報(bào)錯(cuò):"Error?starting?ApplicationContext....
這篇文章主要給大家介紹了關(guān)于SpringBoot項(xiàng)目報(bào)錯(cuò):“Error?starting?ApplicationContext.?To?display?the?conditions?report?re-run?...”的解決辦法,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下2022-08-08
Java編程中使用XFire框架調(diào)用WebService程序接口
這篇文章主要介紹了Java編程中使用XFire調(diào)用WebService程序接口的方法,WebService是一種跨編程語(yǔ)言和跨操作系統(tǒng)平臺(tái)的遠(yuǎn)程調(diào)用技術(shù),需要的朋友可以參考下2015-12-12
java字符串格式化(String類(lèi)format方法)
這篇文章主要介紹了java字符串格式化(String類(lèi)format方法),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02
Java整合mybatis實(shí)現(xiàn)過(guò)濾數(shù)據(jù)
這篇文章主要介紹了Java整合mybatis實(shí)現(xiàn)過(guò)濾數(shù)據(jù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧2023-01-01

