1、员工出勤管理系统java图形化界面设计目录一、 设计目的2二、 功能介绍2三、 程序流程2四、 设计步骤3五、 设计总结7六、 程序清单7一、 设计目的经过课程设计, 使自己提高理论联系实际解决实际问题的能力; 也使自己对基于面向对象的理论进行系统设计过程中的诸多具体问题有感性的认识和深入的理解; 进而提高自己的学习兴趣为其将来顺利进入毕业环节作必要的准备。按照教师给出的思路和计划进度安排独立完成课程设计二、 功能介绍1、 具有新用户注册功能。2、 具有注册用户登录功能。3、 具有员工信息的录入功能。4、 具有员工出勤信息的录入功能。5、 具有数据查询功能, 能够实现查询全部信息和按条件执行查
2、询。6、 具有按条件删除数据功能。7、 具有统计功能8、 .本程序采用RCP技术, 和SQL数据库。三程序流程四、 设计步骤( 一) 程序设计步骤1建立RCP工程并构建数据库2建立RCP工程需要的view和editor3构建基本框架, 并主要修改Perspective和WorkbenchWindowAdvisor两个文件4构建需要的辅助文件5. 测试( 二) 图片说明: 1登录窗口和注册窗口2.菜单部分 3.功能实现模块 查询所有人的出勤情况修改出勤情况增加新的员工信息删除不用的信息管理员密码修改( 三) 数据库设计员工出勤表管理员表五、 设计总结经过将近一周的课程设计, 对java有了更深一
3、层次的认识, 感觉java很强大。虽然系统的基本功能都已实现, 但还是存在系统不稳定等多个问题尚待解决。这个系统主要是我自己开发的, 但也得到了老师和同学的很大帮助。我正在做系统的过程中遇到了很多问题, 有的是知识存储不足, 有的是考虑不够周全, 之因此能够顺利实现基本功功能, 离不开老师和同学的大力相助。事实证明, 只靠自己是不能顺利完成一套功能完整的系统的, 必须充分利用团队的力量。开发一套系统, 最重要的是细心, 并不是一定要做到面面俱到, 但也要充分考虑到客户的需求和现实意义, 不论什么系统, 只用运用到实际应用中, 才具有先现实意义。因此在准备工作中要正确分析社会需求了解现实应用,
4、画出流程图, 把大致框架做好, 然后再逐一细化。我们不可能做到面面俱到, 但一定要做到步步扎实, 作为一个程序编程人员, 要保持清醒的头脑, 以现实为依据, 让自己的每一行代码都能实现自己的意义。 经过这次课程设计, 我收获的不但仅是课程上的知识得到实际应用, 还有编程的基本习惯和开发系统时应注意的流程。虽然课程设计结束了, 可是java的学习却没有结束, 以后更加努力的。六.部分主要程序清单1. RCP中需要修改的ApplicationWorkbenchAdvisor文件import org.eclipse.swt.SWT;import org.eclipse.swt.widgets.Dis
5、play;import org.eclipse.ui.application.IWorkbenchWindowConfigurer;import org.eclipse.ui.application.WorkbenchAdvisor;import org.eclipse.ui.application.WorkbenchWindowAdvisor;import views.Loginshell;public class ApplicationWorkbenchAdvisor extends WorkbenchAdvisor private static final String PERSPECT
6、IVE_ID = rsgl.perspective;public static boolean tag = false; public WorkbenchWindowAdvisor createWorkbenchWindowAdvisor(IWorkbenchWindowConfigurer configurer) try Display display = Display.getDefault();Loginshell shell = new Loginshell(display, SWT.SHELL_TRIM);shell.open();shell.layout();while (!she
7、ll.isDisposed() if (!display.readAndDispatch()display.sleep(); catch (Exception e) e.printStackTrace();if(tag) return new ApplicationWorkbenchWindowAdvisor(configurer);else return null; public String getInitialWindowPerspectiveId() return PERSPECTIVE_ID;2.RCP中需要修改的Perspective文件import org.eclipse.ui.
8、IPageLayout;import org.eclipse.ui.IPerspectiveFactory;import views.Menus;import views.MyInfo;public class Perspective implements IPerspectiveFactory public void createInitialLayout(IPageLayout layout) layout.addView(Menus.ID, IPageLayout.LEFT, 0.45f, layout.getEditorArea(); layout.addView(MyInfo.ID,
9、 IPageLayout.BOTTOM, 0.6f, Menus.ID);3.功能部分程序3.1用户注册public class LoginShell extends Shell private Text text_2;private Text text_1;private Text text;public static void main(String args) try Display display = Display.getDefault();LoginShell shell = new LoginShell(display, SWT.SHELL_TRIM);shell.open();
10、shell.layout();while (!shell.isDisposed() if (!display.readAndDispatch()display.sleep(); catch (Exception e) e.printStackTrace();public LoginShell(Display display, int style) super(display, style);createContents();setBackgroundImage(ResourceManager.getPluginImage(Activator.getDefault(), image/4ddfc6
11、b8b82a188.jpg);setBackground(SWTResourceManager.getColor(255, 255, 255);setImage(ResourceManager.getPluginImage(Activator.getDefault(), image/4ddfc6b8b82a188.jpg);setBackgroundMode(SWT.INHERIT_DEFAULT);setText(用户登陆);protected void createContents() setSize(507, 400);final Label label = new Label(this
12、, SWT.NONE);label.setBackground(SWTResourceManager.getColor(255, 255, 255);label.setText(登录名: );label.setBounds(148, 195, 47, 17);text = new Text(this, SWT.BORDER);text.setBounds(220, 192, 116, 20);final Label label1 = new Label(this, SWT.NONE);label1.setBackground(SWTResourceManager.getColor(255, 2
13、55, 255);label1.setText(密码: );label1.setBounds(148, 235, 39, 17);text_1 = new Text(this, SWT.BORDER | SWT.PASSWORD);final Label label4 = new Label(this, SWT.NONE);text_1.addMouseListener(new MouseAdapter() public void mouseDown(final MouseEvent e) label4.setBackground(SWTResourceManager.getColor(255
14、, 255, 255);if(text.getText().trim() != )label4.setImage(ResourceManager.getPluginImage(Activator.getDefault(), image/4.PNG);elselabel4.setImage(ResourceManager.getPluginImage(Activator.getDefault(), image/3.PNG);label4.setBounds(342, 195, 23, 17););text_1.setBounds(220, 232, 116, 20);final Label la
15、bel2 = new Label(this, SWT.NONE);label2.setBackground(SWTResourceManager.getColor(255, 255, 255);label2.setText(验证码: );label2.setBounds(148, 274, 47, 17);text_2 = new Text(this, SWT.BORDER);final Label label3 = new Label(this, SWT.NONE);label3.setForeground(SWTResourceManager.getColor(255, 0, 0);lab
16、el3.setFont(SWTResourceManager.getFont(方正舒体, 18, SWT.BOLD, true,false);final Label label4_1 = new Label(this, SWT.NONE);text_2.addMouseListener(new MouseAdapter() public void mouseDown(final MouseEvent e) String a2 = 0, 1, 2, 3, 4, 5, 6, 7, 8,9, a, b, c, d, e, f, g, h, i, j,k, l, m, n, o, p, q, r, s
17、, t, u,v, w, x, y, z ;Random r = new Random();String result = ;while (result.length() 0)MessageDialog.openInformation(Shell, 恭喜你, 注册成功);elseMessageDialog.openError(Shell, 很遗憾, 注册失败!);db.close(); );button_2.setBackground(SWTResourceManager.getColor(255, 255, 255);button_2.setText(提交);button_2.setBoun
18、ds(501, 279, 104, 23);public void init(IEditorSite site, IEditorInput input)throws PartInitException setSite(site); setInput(input);Overridepublic boolean isDirty() return false;Overridepublic boolean isSaveAsAllowed() return false;3.3增加信息public class Addzg extends EditorPart public static final Str
19、ing ID = editors.Addzg; /$NON-NLS-1$private Text text2;private Text text1;private Text text3;protected static final Shell Shell = null;public void createPartControl(Composite parent) System.currentTimeMillis();Composite container = new Composite(parent, SWT.NONE);container.setBackgroundImage(Resourc
20、eManager.getPluginImage(Activator.getDefault(), image/4ddfc6b8b82a188.jpg);container.setBackground(SWTResourceManager.getColor(255, 255, 255);final Label label = new Label(container, SWT.WRAP);label.setBackground(SWTResourceManager.getColor(255, 255, 255);label.setText(姓名: );label.setBounds(350, 153
21、, 64, 17);final Label label1 = new Label(container, SWT.WRAP);label1.setBackground(SWTResourceManager.getColor(255, 255, 255);label1.setText(性别: );label1.setBounds(350, 190, 64, 17);final Label label2 = new Label(container, SWT.NONE);label2.setBackground(SWTResourceManager.getColor(255, 255, 255);la
22、bel2.setText(部门: );label2.setBounds(350, 230, 50, 17);final Label label3 = new Label(container, SWT.NONE);label3.setBackground(SWTResourceManager.getColor(255, 255, 255);label3.setText(手机: );label3.setBounds(350, 270, 50, 17);text1 = new Text(container, SWT.BORDER);text1.setBounds(450, 150, 155, 23)
23、;final Button button = new Button(container, SWT.RADIO);button.setBackground(SWTResourceManager.getColor(255, 255, 255);button.addMouseListener(new MouseAdapter() public void mouseDown(final MouseEvent e) if(text1.getText().trim()=)MessageDialog.openError(Shell, 提示! , 姓名不能为空! ););button.setText(男);b
24、utton.setBounds(450, 190, 33, 17);final Button button_1 = new Button(container, SWT.RADIO);button_1.setBackground(SWTResourceManager.getColor(255, 255, 255);button_1.addMouseListener(new MouseAdapter() public void mouseDown(final MouseEvent e) if(text1.getText().trim()=)MessageDialog.openWarning(She
25、ll, 提示! , 姓名不能为空! ););button_1.setBounds(572, 190, 33, 17);button_1.setText(女);text2 = new Text(container, SWT.BORDER);text2.addMouseListener(new MouseAdapter() public void mouseDown(final MouseEvent e) if(!(button.getSelection()&!(button_1.getSelection()MessageDialog.openWarning(Shell, 提示! , 请选择性别!
26、 ););text2.setBounds(450, 227, 155, 23);text3 = new Text(container, SWT.BORDER);text3.addMouseListener(new MouseAdapter() public void mouseDown(final MouseEvent e) if(text2.getText().trim()=)MessageDialog.openWarning(Shell, 提示! , 部门信息不能为空! ););text3.setBounds(450, 267, 155, 23);final Button button_2 = new Button(container, SWT.NONE);button_2.addMouseMoveListener(new MouseMoveListener() public void mouseMove(final MouseEvent arg0) if(text3.getText().trim()=)MessageDialog.openWarning(Shell, 警告! , 手机号不能为空! ););button_2