学生信息系统java课程设计.docx
- 文档编号:17274551
- 上传时间:2023-04-24
- 格式:DOCX
- 页数:8
- 大小:27.92KB
学生信息系统java课程设计.docx
《学生信息系统java课程设计.docx》由会员分享,可在线阅读,更多相关《学生信息系统java课程设计.docx(8页珍藏版)》请在冰豆网上搜索。
学生信息系统java课程设计
Java组件实验报告
班级:
110612
学号:
110612112
专业:
网络工程
姓名:
xxxxxxx
实验目的:
1、掌握java 图形用户界面设计常用类及其各自重要方法的应用。
2、掌握java 事件处理模式并熟练掌握lable事件单选框和复选框处理的方法。
3、进一步掌握java AWT组件、Swing组件及事件编程的各种方法。
掌握事件监听和事件处理方法。
实验内容:
1.编辑一个简单的学生信息系统。
2.要求第一行是姓名输入框。
3.第二行利用单选框来设置男女。
4.第三行是用复选框来设置四门课程。
5.最后需要把所有的学生信息输出。
实验代码:
importjava.awt.*;
importjava.awt.event.*;
importjava.util.ArrayList;
importjava.util.Collection;
importjava.util.HashMap;
importjava.util.Iterator;
importjava.util.Map;
importjavax.swing.*;
importjavax.swing.border.*;
publicclassStudentManager
{JFrameframe=newJFrame("选课系统");
JCheckBoxjcb_en=newJCheckBox("英语");
JCheckBoxjcb_math=newJCheckBox("高数");
JCheckBoxjcb_sport=newJCheckBox("体育");
JCheckBoxjcb_physics=newJCheckBox("大物");
JLabeljl_name=newJLabel("姓名:
");
JTextFieldjtb_name=newJTextField();
JRadioButtonjrb_male=newJRadioButton("男");
JRadioButtonjrb_female=newJRadioButton("女");
privateMap
JTextAreata=newJTextArea();//result
publicstaticvoidmain(Stringargs[])
{StudentManagerts=newStudentManager();
ts.go();
}
privateStringgetClasses()
{
if(null==classes||classes.size()<1)
{
returnnull;
}else{
StringBuildersb=newStringBuilder();
Collection
Iterator
while(it.hasNext()){
sb.append(it.next()+"、");
}
return"选的课程为:
"+sb.toString().substring(0,sb.length()-1)+"。
";
}
}
publicvoidgo()
{
JPaneljp_name=newJPanel();
JPaneljp_sex=newJPanel();
JPanelpa=newJPanel();
JPanelpb=newJPanel();
Borderetched=BorderFactory.createEtchedBorder();
jtb_name.setPreferredSize(newDimension(100,30));
jp_name.add(jl_name);
jp_name.add(jtb_name);
ButtonGroupbg_sex=newButtonGroup();
bg_sex.add(jrb_male);
bg_sex.add(jrb_female);
jrb_male.setSelected(true);
jp_sex.add(jrb_male);
jp_sex.add(jrb_female);
Borderborder=BorderFactory.createTitledBorder(etched,"性别");
jp_sex.setBorder(border);
pa.add(jcb_math);
pa.add(jcb_en);
pa.add(jcb_physics);
pa.add(jcb_sport);
pa.setLayout(newGridLayout(1,0));
border=BorderFactory.createTitledBorder(etched,"课程");
pa.setBorder(border);
ItemListeneril=newItemListener()
{publicvoiditemStateChanged(ItemEvente)
{JCheckBoxcb=(JCheckBox)e.getSource();
if(cb==jcb_math)
{if(jcb_math.isSelected())
{
classes.put("math",jcb_math.getText());
}else{
classes.remove("math");
}
}elseif(cb==jcb_en)
{if(jcb_en.isSelected())
{
classes.put("en",jcb_en.getText());
}else{
classes.remove("en");
}
}elseif(cb==jcb_physics)
{if(jcb_physics.isSelected())
{
classes.put("physics",jcb_physics.getText());
}else{
classes.remove("physics");
}
}elseif(cb==jcb_sport)
{if(jcb_sport.isSelected())
{
classes.put("sport",jcb_sport.getText());
}else{
classes.remove("sport");
}
}
getResult();
}
privatevoidgetResult(){
StringBuildersb=newStringBuilder();
sb.append(jl_name.getText()+jtb_name.getText()+System.lineSeparator());
sb.append("性别:
");
if(jrb_male.isSelected()){
sb.append(jrb_male.getText());
}else{
sb.append(jrb_female.getText());
}
sb.append(System.lineSeparator());
sb.append(getClasses());
ta.setText(sb.toString());
}
};
jcb_math.addItemListener(il);
jcb_en.addItemListener(il);
jcb_physics.addItemListener(il);
jcb_sport.addItemListener(il);
pb.setLayout(newGridLayout(0,1));
pb.add(ta);
Containercp=frame.getContentPane();
cp.setLayout(newGridLayout(0,1));
cp.add(jp_name);
cp.add(jp_sex);
cp.add(pa);
cp.add(pb);
frame.setResizable(false);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setVisible(true);
}
}
实验结果:
实验心得:
通过本次课程设计,成功的完成了这个小型简单的系统的设计,在整个设计过程中我对JAVA使用和它强大的作用有了一个更深刻的认识,尽管这个系统很简单,但是它让我综合运用了这个学期所学的JAVA的很多内容,在此基础上,对JAVA的基础知识得到了更好的巩固。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 信息系统 java 课程设计