网学网VFP毕业设计编辑为广大网友搜集整理了:基于VFP办公室用品管理系统的设计绩等信息,祝愿广大网友取得需要的信息,参考学习。
客服咨询,网学网竭诚为您服务,本站永久域名:myeducs.cn |
登录窗体和系统主界面设计 当系统运行时,首先打开登录窗体,只有有权限的用户才能进入系统。登录成功后,将显示系统主界面。 登录窗体的名称为Frmlogin,它的界面布局如图所示 部分代码 1. 变量声明 登录窗体变量声明如下: Public PasswordKey As String Public NameKey As String Public Try_times As Integer NameKey用于保存用户名,PasswordKey用于保存密码,Try_times用于记录尝试登录的次数 2.cmd_ok_click过程 当用户单击“确定”按钮时触发CMD_Ok_click事件,进行身份验证,代码如下: Private Sub Cmd_OK_Click() Dim j As Single ''数据有效性检查 If txtUser = "" Then MsgBox "请输入用户名" txtUser.SetFocus Exit Sub End If If txtPwd = "" Then MsgBox "请输入密码" txtPwd.SetFocus Exit Sub End If ''将用户输入赋值到变量中 NameKey = MakeStr(txtUser) PasswordKey = MakeStr(txtPwd) ''判断用户是否存在 If MyUser.In_DB(NameKey) = False Then MsgBox "用户名不存在" Try_times = Try_times + 1 If Try_times >= 3 Then MsgBox "您已经三次尝试进入本系统,均不成功,系统将关闭" DBapi_Disconnect End Else Exit Sub End If End If ''判断密码是否正确 MyUser.GetInfo (NameKey) If MyUser.UserPwd <> PasswordKey Then MsgBox "密码错误" Try_times = Try_times + 1 If Try_times >= 3 Then MsgBox "您已经三次尝试进入本系统,均不成功,系统将关闭" DBapi_Disconnect End Else Exit Sub End If End If ''登录成功,将当前用户的信息保存在CurUser中 CurUser.GetInfo (MyUser.UserName) ''关闭登录对话框 Unload Me End Sub 程序的运行过程如下: l 判断是否输入了用户名和密码,如果没有输入,则返回,要求用户输入。 l 将输入的用户名和密码赋值到变量Namekey和Passwordkey中,便于处理。 l 调用Myuser.in_Db()函数,判断当前用户名是否存在。如果不存在,则返回,要求用户重新输入,同时将计数变量Try_times加1 l 如果用户名存在,则调用MyUsers.Getinfo()函数,读取此用户的数据,并将用户密码与输入的密码进行比较。如果密码不同,则返回,要求用户重新输入,同时将计数变量加1 l 如果Try_times大于或等于3,则退出系统 l 如果通过密码验证,则将当前用户的信息保存到curUser对象中,以便在后面的操作中使用 l 关闭登录窗体 设计主界面 主窗体是工程的启动对象,可以在系统菜单中选择“工程/属性”打开窗口设置启动对象。本实列中主窗体名为FrmMain 打开主窗体的设计窗口,选择“工具”菜单项中的“菜单编辑器”对菜单内容进行编辑 在主窗体中添加如下代码: Private Sub Form_Load() FrmLogin.Show 1 End Sub 当主窗体启动时,首先设置连接字符串,然后打开“登录”对话框。如果不能通过身份验证,则不能进入系统 Private Sub mn_Exit_Click() DBapi_Disconnect End End Sub 基本信息管理模块设计 基本信息管理模块包括分类信息管理、部门信息管理和供应商信息管理 设计分类信息管理窗体 分类信息管理窗体的名称为Frmtypeman,窗体布局如图所示 可以看到,分类信息可以分为一级分类和二级分类两种,每个二级分类必须有对应的一级分类作为其上级分类。窗体主要代码如下: Public OriT1Name As String Public OriT2Name As String Private Sub Cmd_Add_Click() If Len(Trim(txtName)) = 0 Then MsgBox "请输入分类名称" txtName.SetFocus Exit Sub End If ''判断当前选择按钮值 If Option1.Item(0).Value = True Then ''选择一级分类 ''判断一级分类名称是否已存在 If MyType.In_DB(Trim(txtName)) Then MsgBox "分类名称已存在" Exit Sub Else MyType.TypeName = Trim(txtName) MyType.UpperId = 0 MyType.Insert MsgBox "添加成功" LoadTypes txtName = "" End If Else ''选择二级分类 ''首先判断是否选择了一级分类名称 If DataList1.SelectedItem > 0 Then ''判断二级分类名称是否已存在 If MyType.In_DB(Trim(txtName)) Then MsgBox "分类名称已存在" Exit Sub Else MyType.TypeName = Trim(txtName) MyType.UpperId = DataList1.BoundText() MyType.Insert MsgBox "添加成功" LoadTypes Set DataList2.RowSource = Nothing DataList1.Enabled = True DataList2.Enabled = False txtName = "" Option1.Item(0).Value = True Option1.Item(1).Value = False End If Else MsgBox "请选择上级分类" Exit Sub End If End If End Sub Private Sub Cmd_Back_Click() Unload Me End Sub Private Sub Cmd_Del_Click() ''判断当前选择按钮值 If Option1.Item(0).Value = True Then ''选择一级分类 ''判断是否选择了一级分类 If DataList1.SelectedItem > 0 Then ''如果此一级分类存在下级分类,则不允许删除 If MyType.HaveSon(DataList1.BoundText()) Then MsgBox "存在二级分类,不能删除" Exit Sub Else MyType.Delete (DataList1.BoundText()) MsgBox "删除成功" LoadTypes txtName = "" End If Else MsgBox "请选择一级分类" Exit Sub End If Else ''判断是否选择了二级分类 If DataList2.SelectedItem > 0 Then ''判断办公用品表中是否已经使用了此分类编号 If MyStore.HaveTId(DataList2.BoundText()) Then MsgBox "办公用品表中存在此分类,不能删除" Exit Sub Else MyType.Delete (DataList2.BoundText()) MsgBox "删除成功" LoadTypes Set DataList2.RowSource = Nothing DataList1.Enabled = True DataList2.Enabled = False txtName = "" Option1.Item(0).Value = True Option1.Item(1).Value = False End If Else MsgBox "请选择二级分类" Exit Sub End If End If End Sub Private Sub Cmd_Modi_Click() If Len(Trim(txtName)) = 0 Then MsgBox "请输入分类名称" txtName.SetFocus Exit Sub End If ''判断当前选择按钮值 If Option1.Item(0).Value = True Then ''选择一级分类 ''判断是否选择了一级分类 If DataList1.SelectedItem < 1 Then MsgBox "请选择一级分类" Exit Sub End If ''判断是否修改了一级分类名称 If Trim(txtName) <> Trim(OriT1Name) Then ''判断新的一级分类名称是否存在 If MyType.In_DB(Trim(txtName)) Then MsgBox "分类名称已存在" Exit Sub Else MyType.TypeName = Trim(txtName) MyType.Update (DataList1.BoundText()) MsgBox "修改成功" LoadTypes txtName = "" End If End If Else ''选择二级分类 ''首先判断是否选择了二级分类名称 If DataList2.SelectedItem > 0 Then ''判断是否修改了一级分类名称 If Trim(txtName) = Trim(OriT2Name) Then Exit Sub End If ''判断新的二级分类名称是否存在 If MyType.In_DB(Trim(txtName)) Then MsgBox "分类名称已存在" Exit Sub Else MyType.TypeName = Trim(txtName) MyType.Update (DataList2.BoundText()) MsgBox "修改成功" LoadTypes Set DataList2.RowSource = Nothing DataList1.Enabled = True DataList2.Enabled = False txtName = "" Option1.Item(0).Value = True Option1.Item(1).Value = False End If Else MsgBox "请选择二级分类" Exit Sub End If End If End Sub Private Sub DataList1_Click() ''当选择一级分类名称时,将分类编号和名称赋给变量,同时将二级分类变量置为空,并装入二级分类名称 If DataList1.SelectedItem > 0 Then OriT1Name = Trim(DataList1.Text) txtName = OriT1Name LoadTypes2 End If End Sub Private Sub DataList2_Click() If DataList2.SelectedItem > 0 Then OriT2Name = Trim(DataList2.Text) txtName = OriT2Name End If End Sub Private Sub Form_Load() LoadTypes DataList2.Enabled = False End Sub ''装入一级分类名称 Private Sub LoadTypes() Adodc1.ConnectionString = Adodc1.RecordSource = "Select * From Types Where UpperId=0 Order By TypeId" Adodc1.Refresh Set DataList1.RowSource = Adodc1 DataList1.ListField = "TypeName" DataList1.BoundColumn = "TypeId" End Sub ''根据一级分类编号 装入二级分类名称 Private Sub LoadTypes2() Adodc2.ConnectionString = Adodc2.RecordSource = "Select * From Types Where UpperId=" + Trim(DataList1.BoundText()) + " Order By TypeId" Adodc2.Refresh Set DataList2.RowSource = Adodc2 DataList2.ListField = "TypeName" DataList2.BoundColumn = "TypeId" End Sub ''修改选项时,数据列表状态更改 Private Sub Option1_Click(Index As Integer) If Index = 0 Then DataList1.Enabled = True DataList2.Enabled = False Else DataList1.Enabled = False DataList2.Enabled = True End If End Sub
|
本站发布的计算机毕业设计均是完整无错的全套作品,包含开题报告+程序+论文+源代码+翻译+答辩稿PPT |
本文选自计算机毕业设计http://myeducs.cn |