




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、一、设计目的 2二、功能介绍 2三、程序流程 2四、设计步骤 3五、设计总结 7六、程序清单 8七、参考文献 17一、设计目的通过课程设计, 使学生提高理论联系实际解决实际问题的能力;也使学生对基于面向对象的理论进行系统设计过程中的诸多具体问题有感性的认识和深入的理解;进而提高学生的学习兴趣为其将来顺利进入毕业环节作必要的准备。二、功能介绍(1)具有新用户注册功能。(2)具有注册用户登录功能。(3)具有职工工资的录入功能, 要求只录入工资各项, 自动计算每个职工工资总额。(4)具有数据查询功能,可以实现查询全部信息和按条件执行查询。(5)具有按条件删除数据功能。三、程序流程四、设计步骤4.1、
2、登陆界面进入系统首先进入登陆界面如图 4.1,输入账号和密码,点击登录就会进入职工工资管理系统,点击注册进入新用户注册界面,定义了局部变量 String 类型的user,password 和 pass 分别记录界面输入的账号,密码和数据库查找的密码,定义了成员变量 boolean 型的 bool 记录输入账号和密码是否匹配。登陆界面Tirnltx欢迎使用员工工资管理系统麻号:嵬而密码:*图 4.1 登陆界面4.2、职工工资管理系统登陆成功后进入的界面如图 4.2,界面有增删改查的功能。widgetSelected()方法创建button 的点击事件,创建 DBHelper 类的对象 db 连接
3、数据库,进行查找,删除修改功能,增删改用 update()方法,查询用 query()方法。图 4.2 职工工资管理界面4.3、全部查找功能点击右边的查询按钮可以查找出所有员工的工资信息如图 4.3,通过自己封装的连接数据库的类 DBHelper 类的对象 db,传递 sql 语句查找数据库的所有信息,用getString()方法导出从数据库中查找到的数据,所得工资=基本工资+职位提成-50*迟到天数-100*旷工天数,通过查找的数据和自己定义的公式得到所得工资。4.4、按条件查找功能在文本框中输入职工号, 点击查找能找到对应职工的工资情况, 如图 4.4o 用 getText()方法获得 t
4、ext 文本框中的的输入信息, 定义局部变量 boolean 型的数据 bool,记录数据库中是否有对应的职工号,如果查到则为 true,并且在表格中先用 removeAll()方法清空表的信息,然后用 sql 语句找出 text 中的职工号对应的数据。图 4.4 按条件查找界面录入功能点击录入键进入录入界面如图 4.5,输入职工信息,点击录入修改数据库的信息,并且能更新查找的结果。 用 getText()方法获得 text 文本框的信息, 定义局部变量 String 类型的s1,s2,s3,s4,s5,s6 记录六个文本框的信息,通过 DBHelper 的对象db 调用 update 方法把
5、信息传入数据库。删除功能点击选中行,然后点击删除按钮就会将选种的行删除掉,例如删除图 4.3 中第三行数据如图 4.6。 定义局部变量 TableItem数组用 table.getSelection()方法查找并存储选中行的信息,定义 int型数组用 table.getSelectionIndices()方法查找并存储选中行的行号,用这两个信息分别删除数据库和界面的选中信息。图 4.5 录入功能界面图 4.6 删除功能界面注册功能点击注册键后进入如图 4.7 所示的界面,输入新用户账号和密码,如果两次密码输入相同就注册成功。 定义局部变量 String 类型的 user,password 和
6、pass 分别记录三个文本框输入的内容,用 equals 方法判断 pass 和 password 是否相同,如果相同,则注册成功,并用 dispose()方法关闭此窗口。新用户注册界面匚叵区新用户注册界面账号二新用户密码;*请确认密码:*1注册图 4.7 注册功能界面五、设计总结这次课程设计,我们知道了成员变量和局部变量的不同,有些变量如果不设成成员变量就无法把数据传递出去,我们学会了封装,将连接数据库的方法封装到 DBHelper 类中,封装的便利让我们写程序更快捷,但是界面的功能还不够人性化。六、程序清单importjava.sql.ResultSet;importjava.sql.SQ
7、LException;importorg.eclipse.swt.SWT;importorg.eclipse.swt.events.SelectionAdapter;importorg.eclipse.swt.events.SelectionEvent;importorg.eclipse.swt.widgets.Button;importorg.eclipse.swt.widgets.Display;importorg.eclipse.swt.widgets.Label;importorg.eclipse.swt.widgets.Shell;importorg.eclipse.swt.widg
8、ets.Text;importcom.swtdesigner.SWTResourceManager;publicclassdengluextendsShellbool;Texttext_1;Texttext;staticvoidmain(Stringargs 口)Displaydisplay=Display.getDefault();denglushell=newdenglu(display,SWT.SHELL_TRIMshell.open();shell.layout();while(!shell.isDisposed()if(!display.readAndDispatch()displa
9、y.sleep();catch(Exceptione)e.printStackTrace();publicdenglu(Displaydisplay,intstyle)super(display,style);createContents();protectedvoidcreateContents()setText(登陆界面);setSize(622,439);finalLabellabel=newLabel(this,SWT.BORDERlabel.setFont(SWTResourceManager.getFont(,12,SWT.BOLD;label.setText(账号:);label
10、.setBounds(90,112,60,27);finalLabellabel_1=newLabel(this,SWT.BORDERlabel_1.setFont(SWTResourceManager.getFont(,12,SWT.BOLD;label_1.setText(密码:);label_1.setBounds(90,185,60,27);text=newText(this,SWT.BORDERtext.setBounds(208,112,125,27);text_1=newText(this,SWT.BORD目符 WT.PASSWORDtext_1.setBounds(208,18
11、5,125,27);finalButtonbutton=newButton(this,SWT.NONEbutton.addSelectionListener(newSelectionAdapter()publicvoidwidgetSelected(finalSelectionEvente)Stringuser=text.getText();Stringpassword=text_1.getText();booleanprivateprivatepublictryDBHelperdb=newDBHelper();Stringsql=select 密码 fromuser_Tablewhere 账
12、号=+user+ResultSetrs=db.query(sql);trywhile(rs.next()Stringpass=rs.getString(密码);if(password.equals(pass)bool=true;else装 bool=false;if(bool=true)tryDisplaydisplay=Display.getDefault();zhigonggongzishell=newzhigonggongzi(display,订 SWTSHELL_TRIMshell.open();shell.layout();while(!shell.isDisposed()if(!d
13、isplay.readAndDispatch()display.sleep();线catch(Exceptione2)e2.printStackTrace();catch(SQLExceptione1)/TODOAuto-generatedcatchblocke1.printStackTrace(););button.setFont(SWTResourceManager.getFont(,12,SWT.BOLD);button.setText(登陆)button.setBounds(388,255,48,22);finalButtonbutton_1=newButton(this,SWT.NO
14、NEbutton_1.setFont(SWTResourceManager.getFont(,12,SWT.BOLIJ);button_1.setText(注册);button_1.setBounds(388,306,48,22);finalLabellabel_2=newLabel(this,SWT.BORDERlabel_2.setFont(SWTResourceManager.getFont(,15,SWT.BOLD;label_2.setText(欢迎使用员工工资管理系统);label_2.setBounds(90,37,271,27);/Overrideprotectedvoidch
15、eckSubclass()/DisablethecheckthatpreventssubclassingofSWTcomponentsimportjava.sql.ResultSet;importjava.sql.SQLException;importorg.eclipse.swt.SWT;importorg.eclipse.swt.events.SelectionAdapter;importorg.eclipse.swt.events.SelectionEvent;importorg.eclipse.swt.widgets.Button;importorg.eclipse.swt.widge
16、ts.Display;importorg.eclipse.swt.widgets.Label;importorg.eclipse.swt.widgets.Shell;importorg.eclipse.swt.widgets.Table;importorg.eclipse.swt.widgets.TableColumn;importorg.eclipse.swt.widgets.TableItem;importorg.eclipse.swt.widgets.Text;importcom.swtdesigner.SWTResourceManager;publicclasszhigonggongz
17、iextendsShellprivateTexttext;privateTabletable;publicstaticvoidmain(Stringargs 口)tryDisplaydisplay=Display.getDefault();zhigonggongzishell=newzhigonggongzi(display,SWT.SHELL_TRIMshell.open();shell.layout();while(!shell.isDisposed()if(!display.readAndDispatch()display.sleep();catch(Exceptione)e.print
18、StackTrace();publiczhigonggongzi(Displaydisplay,intstyle)super(display,style);createContents();protectedvoidcreateContents()setText(职工工资管理系统界面);setSize(697,458);table=newTable(this,SWT.FULL_SELECTIO|ISWT.BORDERtable.setLinesVisible(true);table.setHeaderVisible(true);table.setBounds(10,67,573,214);fi
19、nalTableColumnnewColumnTableColumn=newTableColumn(table,SWT.NONEnewColumnTableColumn.setWidth(73);newColumnTableColumn.setText(职工号);finalTableColumnnewColumnTableColumn_1=newTableColumn(tablenewColumnTableColumn_1.setWidth(76);newColumnTableColumn_1.setText(职工姓名);finalTableColumnnewColumnTableColumn
20、_2=newTableColumn(tablenewColumnTableColumn_2.setWidth(76);newColumnTableColumn_2.setText(基本工资);finalTableColumnnewColumnTableColumn_3=newTableColumn(tablenewColumnTableColumn_3.setWidth(80);newColumnTableColumn_3.setText(职位提成);finalTableColumnnewColumnTableColumn_4=newTableColumn(tablenewColumnTabl
21、eColumn_4.setWidth(79);newColumnTableColumn_4.setText(迟到天数);finalTableColumnnewColumnTableColumn_5=newTableColumn(tablenewColumnTableColumn_5.setWidth(83);newColumnTableColumn_5.setText(旷工天数);finalTableColumnnewColumnTableColumn_6=newTableColumn(tablenewColumnTableColumn_6.setWidth(100);newColumnTab
22、leColumn_6.setText(所得工资);finalButtonbutton=newButton(this,SWT.NONEbutton.addSelectionListener(newSelectionAdapter()publicvoidwidgetSelected(finalSelectionEvente)tryDisplaydisplay=Display.getDefault();lurushell=newluru(display,SWT.SHELL_TRIMshell.open();shell.layout();while(!shell.isDisposed()if(!dis
23、play.readAndDispatch()display.sleep();catch(Exceptione2)e2.printStackTrace();a(););button.setFont(SWTResourceManager.getFont(,12,SWT.BOLD;button.setText(录入);button.setBounds(604,142,55,31);finalButtonbutton_1=newButton(this,SWT.NONEbutton_1.addSelectionListener(newSelectionAdapter()publicvoidwidgetS
24、elected(finalSelectionEvente)TableItemitem=table.getSelection();DBHelperdb=newDBHelper();for(inti=0;iitem.length;i+)Stringid=itemi.getText(0);Stringsql=deletefrom 职工信息表 where 职工号=+id+db.update(sql);db.close();int 口 a=table.getSelectionIndices();,SWT.NONE,SWT.NONE,SWT.NONE,SWT.NONE,SWT.NONE,SWT.NONEt
25、able.remove(a););button_1.setFont(SWTResourceManager.getFont(,12,SWT.BOLD);button_1.setText(删除);button_1.setBounds(604,196,55,31);finalButtonbutton_2=newButton(this,SWT.NONEbutton_2.addSelectionListener(newSelectionAdapter()publicvoidwidgetSelected(finalSelectionEvente)a(););button_2.setFont(SWTReso
26、urceManager.getFont(,12,SWT.BOLD);button_2.setText(查询);button_2.setBounds(604,91,55,31);text=newText(this,SWT.BORDERtext.setBounds(209,314,89,31);finalLabellabel=newLabel(this,SWT.BORDERlabel.setFont(SWTResourceManager.getFont(,12,SWT.BOLD;label.setText(按职工号查找:);label.setBounds(53,314,136,31);finalB
27、uttonbutton_3=newButton(this,SWT.NONEbutton_3.addSelectionListener(newSelectionAdapter()publicvoidwidgetSelected(finalSelectionEvente)table.removeAll();Stringid=text.getText();DBHelperdb=newDBHelper();Stringsql=select*from 职工信息表;ResultSetrs=db.query(sql);booleanbool=true;if(bool)trywhile(rs.next()if
28、(id.equals(rs.getString(职工号)bool=false;finalTableitemnewltemTableltem=newitemTableitem.setText(0,rs.getString(职工号);newitemTableitem.setText(1,rs.getString(姓名);newitemTableitem.setText(2,rs.getString(基本工资);doublemoney1=Double.parseDouble(rs.getString(基本工资newitemTableitem.setText(3,rs.getString(职位提成);
29、doublemoney2=Double.parseDouble(rs.getString(职位提成newitemTableitem.setText(4,rs.getString(迟到天数);intday1=integer.parseint(rs.getString(迟到天数);newitemTableitem.setText(5,rs.getString(旷工天数);intday2=integer.parseint(rs.getString(旷工天数);doublemoney=money1+money2-day1*50-day2*100;if(money0)newTableltem(table
30、SWTBORDER););money=0;)StringMoney=String.valueOf(money);newItemTableItem.setText(6,Money);)catch(SQLExceptione1)/TODOAuto-generatedcatchblocke1.printStackTrace(););button_3.setFont(SWTResourceManager.getFont(,12,SWT.BOLD);button_3.setText(查找);button_3.setBounds(347,312,73,33);finalLabellabel_1=newLa
31、bel(this,SWT.BORDERlabel_1.setFont(SWTResourceManager.getFont(,15,SWT.BOLD;label_1.setText(职工工资管理系统);label_1.setBounds(189,24,177,31);/publicvoida()table.removeAll();DBHelperdb=newDBHelper();Stringsql=select*from 职工信息表doublemoney1=Double.parseDouble(rs.getString(基本工资);newItemTableItem.setText(3,rs.g
32、etString(职位提成);doublemoney2=Double.parseDouble(rs.getString(职位提成);newItemTableItem.setText(4,rs.getString(迟到天数);intday1=Integer.parseInt(rs.getString(迟到天数);newItemTableItem.setText(5,rs.getString(旷工天数);intday2=Integer.parseInt(rs.getString(旷工天数);doublemoney=money1+money2-day1*50-day2*100;if(money0)m
33、oney=0;StringMoney=String.newItemTableItem.setText(6,Money);catch(SQLExceptione)/TODOAuto-generatedcatchblocke.printStackTrace();ResultSetrs=db.query(sql);trywhile(rs.next()finalTableitemnewltemTableltemnewItemTableItem.setText(0,rs.getString(newitemTableitem.setText(1,rs.getString(newItemTableItem.
34、setText(2,rs.getString(=newTableItem(table,SWT.BORDER职工号);姓名);基本工资);valueOf(money);OverrideprotectedvoidcheckSubclass()/DisablethecheckthatpreventssubclassingofSWTcomponents)importorg.eclipse.swt.SWT;importorg.eclipse.swt.events.SelectionAdapter;importorg.eclipse.swt.events.SelectionEvent;importorg.
35、eclipse.swt.widgets.Button;importorg.eclipse.swt.widgets.Display;importorg.eclipse.swt.widgets.Label;importorg.eclipse.swt.widgets.Shell;importorg.eclipse.swt.widgets.Text;importcom.swtdesigner.SWTResourceManager;Displaydisplay=Display.getDefault();lurushell=newluru(display,SWT.SHELL_TRIMshell.open(
36、);shell.layout();while(!shell.isDisposed()if(!display.readAndDispatch()display.sleep();)catch(Exceptione)e.printStackTrace();publicluru(Displaydisplay,intstyle)super(display,style);createContents();protectedvoidcreateContents()setText(职工工资录入界面);setSize(660,451);finalLabellabel=newLabel(this,SWT.BORD
37、ERlabel.setFont(SWTResourceManager.getFont(,12,SWT.BOLD;label.setText(职工号:);label.setBounds(87,82,87,26);finalLabellabel_1=newLabel(this,SWT.BORDERlabel_1.setFont(SWTResourceManager.getFont(,12,SWT.BOLD;label_1.setText(姓名:);label_1.setBounds(87,119,87,24);privateTexttext_5;privateTexttext_4;privateT
38、exttext_3;privateTexttext_2;privateTexttext_1;privateTexttext;publicstaticvoidmain(Stringargs)tryclassluruextendsShellpublictext=newText(this,SWT.BORDERtext.setBounds(241,82,70,26);text_1=newText(this,SWT.BORDERtext_1.setBounds(241,119,70,24);text_2=newText(this,SWT.BORDERtext_2.setBounds(241,149,70
39、,24);text_3=newText(this,SWT.BORDERtext_3.setBounds(241,179,70,26);text_4=newText(this,SWT.BORDERtext_4.setBounds(241,219,70,26);text_5=newText(this,SWT.BORDERtext_5.setBounds(241,260,70,26);finalButtonbutton=newButton(this,SWT.NONEbutton.addSelectionListener(newSelectionAdapter()publicvoidwidgetSel
40、ected(finalSelectionEvente)Strings1=text.getText();Strings2=text_1.getText();Strings3=text_2.getText();Strings4=text_3.getText();Strings5=text_4.getText();Strings6=text_5.getText();DBHelperdb=newDBHelper();Stringsql=insertinto 职,信息表(职,号,姓名,基本,费,职位提成,迟到天数,旷工天数)values(+s1+,+s2+,+s3+,+s4+,+s5+,+s6+);db
41、.update(sql);luru.this.dispose(););button.setFont(SWTResourceManager.getFont(,12,SWT.BOLD;button.setText(录入);button.setBounds(430,321,48,22);finalLabellabel_2=newLabel(label_2.setFont(SWTResourceManager.label_2.setText(基本工资:”);label_2.setBounds(87,149,87,24);finalLabellabel_3=newLabel(label_3.setFon
42、t(SWTResourceManager.label_3.setText(职位提成:);label_3.setBounds(87,179,87,26);finalLabellabel_4=newLabel(label_4.setFont(SWTResourceManager.label_4.setText(迟到天数:);label_4.setBounds(87,219,87,26);finalLabellabel_5=newLabel(label_5.setFont(SWTResourceManager.label_5.setText(旷工天数:);label_5.setBounds(87,2
43、58,87,26);finalLabellabel_6=newLabel(label_6.setFont(SWTResourceManager.label_6.setText(职工工资录入界面this,SWT.BORDERgetFont(”,12,SWT.BOLD;this,SWT.BORDERgetFont(”,12,SWT.BOLD;this,SWT.BORDERgetFont(,12,SWT.BOLD;this,SWT.BORDERgetFont(,12,SWT.BOLD;this,SWT.BORDERgetFont(,15,SWT.BOLD;);/)Overrideprotectedv
44、oidcheckSubclass()/DisablethecheckthatpreventssubclassingofSWTcomponents)importorg.eclipse.swt.SWT;importorg.eclipse.swt.events.SelectionAdapter;importorg.eclipse.swt.events.SelectionEvent;importorg.eclipse.swt.widgets.Button;importorg.eclipse.swt.widgets.Display;importorg.eclipse.swt.widgets.Label;
45、importorg.eclipse.swt.widgets.Shell;importorg.eclipse.swt.widgets.Text;importcom.swtdesigner.SWTResourceManager;publicclasszhuceextendsShellprivateTexttext_2;privateTexttext_1;privateTexttext;publicstaticvoidmain(Stringargs)tryDisplaydisplay=Display.getDefault();zhuceshell=newzhuce(display,SWT.SHELL
46、_TRI)Mshell.open();shell.layout();while(!shell.isDisposed()if(!display.readAndDispatch()display.sleep();)catch(Exceptione)e.printStackTrace();publiczhuce(Displaydisplay,intstyle)super(display,style);createContents();protectedvoidcreateContents()setText(新用户注册界面”);setSize(611,455);finalLabellabel=newLabel(this,SWT.BORDERlabel_2.setBounds(76,185,104,36);label.setFont(SWTResourceManager.label.setText(新用户注册界面);label
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年计算机二级考试回答技巧试题及答案
- 2024年5月深海潜水心理压力阈值测定与装备失效应急推演
- 2024年投资咨询测试题及答案总结
- 天使的微笑护理读书笔记
- 2024监理工程师考试独特挑战试题及答案
- 2024人力资源管理师考试高频试题及答案
- 黑龙江民族职业学院《文学文本细读》2023-2024学年第一学期期末试卷
- 黑龙江省伊春市南岔区伊春二中2024-2025学年高三下期第二次月考语文试题含解析
- 黑龙江省哈尔滨市依兰县2024-2025学年初三下期末物理试题(一模)质量监控试卷含解析
- 黑龙江省哈尔滨市第九中学2025年高三第二学期二模考试英语试题含解析
- 2024年电子商务师真题试题及答案
- 异麦芽糖酐铁注射液-药品临床应用解读
- 园艺植物遗传育种 课件全套 第1-10章 绪论-新品种的审定与推广繁育+实训
- 【初中化学】常见的盐(第1课时常见的盐的性质和用途)-2024-2025学年九年级化学人教版(2024)下册
- 《智能优化算法解析》 课件 第6章-基于群智能的智能优化算法
- 湖南省高二年级下册期中联考物理试题(原卷版)
- 智慧教室建设实施计划方案
- 神经外科病人肺部管理
- 【MOOC】思辨式英文写作-南开大学 中国大学慕课MOOC答案
- 24秋国家开放大学《经济法学》形考任务(记分作业)1-4参考答案
- 2024年湖北省武汉市中考英语真题(含解析)
评论
0/150
提交评论