宿舍管理系统代码实现.docx
- 文档编号:7443158
- 上传时间:2023-01-24
- 格式:DOCX
- 页数:31
- 大小:324.43KB
宿舍管理系统代码实现.docx
《宿舍管理系统代码实现.docx》由会员分享,可在线阅读,更多相关《宿舍管理系统代码实现.docx(31页珍藏版)》请在冰豆网上搜索。
宿舍管理系统代码实现
代码实现
一、登录界面
此界面是由Photoshop制作而成。
在做这个登录面的时候想了很多,最后选择了这种,感觉它看起来干净,整齐。
又不失其庄雅。
加上本单位最有特色的建筑,会让人一目了然。
1.1登录图片显示
图登录界面
1.2界面制作与实现
在这个界面中,主要处理的是判断当前用户输入的信息是否正确。
如果正确,那么它属于哪种类型用户。
因为此管理软件在登录后不同类型的用户显示的窗体与实现的功能都不是一样的,它们会有所差别!
(1)浮动按钮的实现
确定和取消两个按钮在鼠标没有放上去之前看上去只是一个普通的平面字效果,但是当你把鼠标放在这几个字上面后,它会显示凸出的效果,按下后呈现凹陷的效果。
总体实现立体的感觉。
原理主要是在鼠标mousemove事件与线的颜色变化组合来实现。
主要代码如下:
在窗体中的鼠标移动过程中,以及在窗体初始化的时候,要把添加的线的.Visible属性设置为False,只有在鼠标按下的时候在改变其颜色即可。
PrivateSubForm_MouseMove(ButtonAsInteger,ShiftAsInteger,xAsSingle,YAsSingle)
=False
=False
=False
=False
=False
=False
=False
=False
EndSub
鼠标按下的时候设置线条的颜色如下:
PrivateSubLabel3_MouseDown(ButtonAsInteger,ShiftAsInteger,xAsSingle,YAsSingle)
=&H808080
=&H808080
=&HE0E0E0
=&HE0E0E0
EndSub
鼠标移动到标签的时候设置线条的颜色如下:
PrivateSubLabel3_MouseMove(ButtonAsInteger,ShiftAsInteger,xAsSingle,YAsSingle)
=&HE0E0E0
=&HE0E0E0
=&H808080
=&H808080
=True
=True
=True
=True
EndSub
(2)用户类型判断
在数据库中建了一人yonghu表。
在添加管理人员时有两种默认级别。
管理员、普通用户。
管理员拥有对数据库操作的一切权限。
普通用户只有普通的查看,数据转换等。
没有删除等操作功能。
前用户成功登录后,会在主窗体的状态栏中显示出当前用户及其用户类型。
主要代码如下:
设置当前控件连接的数据库
DimproviderAsString
DimdatasourceAsString
provider="provider="
datasource="datasource="&&"\"
WithAdodc1
.Mode=adModeReadWrite
.ConnectionString=provider&";"&datasource
.CommandType=adCmdTable
.RecordSource="yonghu"
.Refresh
.
EndWith
对用户进行判断
If=""Then
MsgBox"请输入用户名!
",48,"提示"
ExitSub
EndIf
"用户='"&&"'"
If=FalseAnd=Trim"pass"))Then
="级别")
="用户")
UnloadMe
Else
=""
=""
MsgBox"登录不成功,请重新登录!
",48,"提示"
EndIf
一、程序主界面
程序主界面为本软件的显示的核心部分。
一切主要操作及显示都通过这里完成。
整个界面主要由五部分组成。
菜单部分、工具栏、左侧操作栏、右侧显示栏以及状态栏。
①界面效果图如下:
图程序主界面
左侧操作栏和右侧显示栏会在下面的内容中做介绍,现在只简单介绍一下工具栏和状态栏,以及主窗体的各个事件。
②它的实现方法如下所示:
DimoAsAdodc
Seto=
这里主要是用到了ado对像的方法。
用这个方法得到数据源。
下面是整个工具栏运行时代码:
SelectCase
Case1
1
Case3
1
Case5
OnErrorGoTonext2
DimsAsAdodc
Sets=
If="users"Then
1
EndIf
next2:
Case7
OnErrorResumeNext
DimoAsAdodc
Seto=
9
1
Case11
WithAdodc1
.Mode=adModeReadWrite
.ConnectionString=provider&";"&datasource
.CommandType=adCmdTable
.RecordSource="users"'
.Refresh
EndWith
Set=Adodc1
Calldx
Case13
UnloadMe
EndSelect
="级别")
="用户")
(2).Text="当前用户:
"&
(3).Text="用户模式:
"&
(4).Text=Date&""&Time
'设置普通用户模式
If="普通用户"Then
=False
=False
=False
=False
(5).Visible=False
(6).Visible=False
(7).Visible=False
(8).Visible=False
EndIf
=-
=---750
=---750
=---1200
=---1200
=---1200
=---1500
=---1500
=---1500
Y=
x=(Y-z)/4
(1).Width=u+x
(2).Width=v+x
(3).Width=w+x
(4).Width=m+x
provider="provider="
datasource="datasource="&&"\"
WithAdodc1
.Mode=adModeReadWrite
.ConnectionString=provider&";"&datasource
.CommandType=adCmdTable
.RecordSource="users"'
.Refresh
EndWith
WithAdodc2
.Mode=adModeReadWrite
.ConnectionString=provider&";"&datasource
.CommandType=adCmdTable
.RecordSource="gongyu"
.Refresh
EndWith
WithAdodc3
.Mode=adModeReadWrite
.ConnectionString=provider&";"&datasource
.CommandType=adCmdTable
.RecordSource="class"
.Refresh
EndWith
WithAdodc4
.Mode=adModeReadWrite
.ConnectionString=provider&";"&datasource
.CommandType=adCmdTable
.RecordSource="weisheng"
.Refresh
EndWith
WithAdodc5
.Mode=adModeReadWrite
.ConnectionString=provider&";"&datasource
EndWith
WithAdodc6
.Mode=adModeReadWrite
.ConnectionString=provider&";"&datasource
.CommandType=adCmdTable
.RecordSource="dengji"
.Refresh
EndWith
WithAdodc7
.Mode=adModeReadWrite
.ConnectionString=provider&";"&datasource
.CommandType=adCmdTable
.RecordSource="qinshi"
.Refresh
EndWith
WithAdodc9
.Mode=adModeReadWrite
.ConnectionString=provider&";"&datasource
.CommandType=adCmdTable
.RecordSource="zichan"
.Refresh
EndWith
treeview部分树形显示的初始化在这里已经做了几个过程,调用即可。
三、系统管理
3.1用户管理
①界面效果图
图用户管理
②界面制作与实现方法
这个界面总体来说各个控件比较简单,但是作为一个添加删除管理员的操作,它已经连接到了数据库,与数据库的yonghu表相联。
各个控件也与数据库中表的字段绑定。
在窗体初始化的时候要判断当前数据库表中是否有记录,如果没有记录那么有些按钮将会被设置成为失效状态,否则会出现错误。
设置代码如下:
DimproviderAsString
DimdatasourceAsString
provider="provider="
datasource="datasource="&&"\"
WithAdodc1
.Mode=adModeReadWrite
.ConnectionString=provider&";"&datasource
.CommandType=adCmdTable
.RecordSource="yonghu"
.Refresh
EndWith
=False
=False
If=0Then
=False
=False
=False
=False
EndIf
=
上一条与下一条的功能一目了然,它们可以对当前表进行上一条记录或下一条记录依次查看。
当找到记录后,可以对其进行相对的删除、修改等操作。
上一条记录与下一条的记录在查看时有一个判断。
当表中记录移到最前面(BOF)或最后面(EOF)时,会把上一条或下一条其中的一个按钮的enable属性设置为true。
即不可以前查看或向后查看。
上一条与下一条主要代码如下:
'移动记录
=True
IfThen
=False
EndIf
'移动记录
=True
IfThen
=False
EndIf
添加用户可以添加使用该管理软件的用户。
添加的时候可以选择所添加人物的级别。
软件默认为两个级别:
管理员、普通用户。
管理员拥有对此软件管理操作等一切的权力。
普通用户,只有普通的查看、查询、备份、添加等权力。
没有对记录删除等权力。
在添加用户时你可以选择一个且必须选择一个。
然后输入此用户的用户名和密码即可!
添加用户主要代码:
If="添加"Then
=False
=False
=False
="确定"
="取消"
=True
=True
=True
=True
=True
=""
ElseIf=""Then
MsgBox"用户名不能为空!
",48,"提示"
ElseIf=""Then
MsgBox"密码不能为空!
",48,"提示"
ElseIf<>Then
MsgBox"密码两次需一致!
",48,"提示"
ElseIf=""Then
MsgBox"请选择所建用户类型!
",48,"提示"
Else
=True
=True
=True
=True
="编辑"
="添加"
=False
=False
=False
=False
=False
=False
=False
=False
EndIf
删除操作可以把当前记录删除掉。
一经删除即不可以在恢复。
所以在操作前要想好。
删除操作部分代码:
If=1Then
=False
EndIf
If(MsgBox("你真的想删除当前记录吗?
",vbOKCancel,"系统提示"))=vbOKThen
If
编辑操作可以对当前所选择的用户进行编辑,可以修改其用户名与密码。
当当前用户感觉自己用户名称或密码有泄露时,可以进行修改。
修改记录即更新表中的某一条记录。
编辑操作主要代码如下:
=False
=True
=True
=True
=True
=True
=True
="确定"
ElseIf="取消"Then
="编辑"
="添加"
=True
=True
=True
=
=False
=False
=False
=False
=False
=False
=False
=False
EndIf
3.2公寓设置
公寓设置可以说是本程序中一关键部分。
因为所有的设置都在此进行。
包括公寓添加、修改、删除。
寝室的添加、修改、删除以及班级的添加、修改和删除操作。
只有正确的对这些设置进行添加修改,才能输入正确的记录。
这里主要涉及到的问题是datagrid的显示,以及treeview及时形成新的结构。
还有一些就是对表记录的复杂操作。
在点击sstab各版的时候,要在这时重新生成寝室设置中的树型结构,
SelectCasePreviousTab
Case0
Callstartree1
Case1
DimIAsInteger
I=1
If<>0Then
DoWhileI<"公寓名称"))
I=I+1
Loop
EndIf
Callstartree1
Case2
Callstartree1
EndSelect
EndSub
(1)公寓设置
①公寓设置效果图
图公寓设置
②界面制作与实现方法
在这个界面中主要用到了一个Sstab控件与一个显示表中内容的Datagrid控件。
以及起到美观作用的Frame控件。
在右下角的文本框中可以输入想要添加的公寓名称。
然后点击添加即可完成添加操作。
Datagrid中会立即刷新显示更新内容。
要修改某条记录时,要先对所要修改的记录进行选择,确认选择后,点击下面的修改按钮,会在下面的文本中显示出所要修改公寓的名称,此时即可输入要修改的名字。
然后点击更新就会完成此操作。
Datagrid也会即时更新其内容。
删除操作更为简单,选择想要删除的公寓名称,点击删除,确认后完成此操作。
但是删除后不会影响其它表中的数据。
其它表的有关此公寓的信息还会存在。
在进行所有操作前,先要确定数据库已连接。
在添加前要判断所写公寓名称是否正确,即是否输入名称,该记录不能为空,不为空则对数据库表进行查找,判断当前输入记录是否已在表中存在,如果已存在,则会给出提示,不存在,添加成功。
"公寓名称='"&&"'"
If=FalseThen
MsgBox"此公寓已存在",,"提示"
Sub
EndIf
=""
If=""Then
MsgBox"输入所要添加公寓的名称",,"提示"
ExitSub
EndIf
添加:
"公寓名称")=
="gongyu"
=""
Set=Adodc1
修改公寓名称:
If=""Then
MsgBox"选择要修改的公寓",,"提示"
ExitSub
EndIf
If="修改"Then
=
="输入想要修改的公寓名称"
="更新"
=False
=False
ElseIf="更新"Then
=True
=True
="输入想要添加的公寓名称"
"公寓名称")=
"updateqinshiset公寓名称='"&&"'where公寓名称='"&Trim&"'"
="修改"
EndIf
Set=Adodc1
=Adodc5
删除公寓名称
If=""Then
MsgBox"选择所要删除公寓的名称",,"提示"
ExitSub
EndIf
If(MsgBox("你真的想删除公寓名称为"&&"的记录吗?
",vbOKCancel,"系统提示"))=vbOKThen
If
=""
Set=Adodc1
(2)寝室设置
①寝室设置效果图
图寝室设置
②界面制作与实现方法
此界面实现相对比公寓设置来说相对复杂一些。
用到的控件主要是Sstab与Treeview。
但是在程序方面比较复杂。
在添加一个寝室前先要选择所要添加寝室所在的公寓。
这个公寓可以点击下面的树中的节点,也可以在列表框中选择。
树中的节点在点击后会把父节点显示在选择公寓后面的列表框中,而选中的节点会出现在寝室名称里。
你也可以自己进行添写,确认公寓后即可添加完成了。
添加后会把Treeview重新刷新一下。
以显示更新后的记录。
添加源码:
"公寓名称='"&&"'"
If=TrueThen
MsgBox"此公寓不存在",,"提示"
Sub
EndIf
If=""Or=""Then
MsgBox"请输入所要添加的寝室及其所属公寓",,"提示"
ExitSub
EndIf
WithAdodc2
.
.(0).Value=
.
(1).Value=
.
EndWith
=""
=""
Callstartree1
修改操作可以把当前选中的寝室进行名称修改与其所属公寓进行修改。
当要对名称进行修改时,先要选择所要修改的寝室名,选择后会在寝室名称里显示出来,把当前寝室名称改成要修改的寝室名称,然后点击修改即完成名称修改操作。
当要对当前寝室的所属公寓进行修改时,需要先选择所要修改的寝室,然后在上面的公寓名称后填写所要修改的寝室名称。
点击修改后完成此操作。
但是这种操作不是常见。
修改源码:
"公寓名称='"&&"'"
If=TrueThen
MsgBox"此公寓不存在",,"提示"
Sub
EndIf
DimsqlAsString
OnErrorResumeNext
If=""Or=""Then
MsgBox"请在下面选择所要修改的寝室",,"提示"
ExitSub
EndIf
'sql="select*formqinshiwhere公寓名称='"&Trim&"'and寝室='"&Trim&"'"
"updateqinshiset寝室='"&&"',公寓名称='"&Trim&"'where寝室='"&Trim&"'and公寓名称='"&Trim&"'"
=""
=""
Callstartree1
删除操作可以删除掉当前树型显示中的任何一个子节点,也就是这个树型节点中的寝室名称,注意的是,删除后这个记录只在qinshi表中删除,其相关记录不会被删除掉的,如果想删除,还需要人工操作。
实现的方法主要是对qinshi表操作,先对其进行查询,查询当前想要被删除的表是否存在,如果不存在,则给出提示,如果存在这条记录,则在表中把它删除掉,删除后调用生成树过程,把当前寝室设置中的树型结构重新生成,更新记录。
实现的部分代码如下所示:
If=""Or=""Or="公寓管理系统"Then
MsgBox"选择所要删除的寝室",,"提示"
ExitSub
EndIf
If(MsgBox("你真的想删除"&&""&"寝室为"&&"的记录吗?
",vbOKCancel,"系统提示"))=vbOKThen
"deletefromqinshiwhere公寓名称='"&Trim&"'and寝室='"&Trim&"'"
If
=""
=""
Callstartree1
在treeview点击的时候,上面的文本框中会显示相应的记录,这主要是对treeview进行了设置,代码如下:
PrivateSubTreeView1_NodeClick(ByValNodeAs
OnErrorResumeNext
====Sub
(3)班级设置
①班级设置效果图
图班级设置
②界面制作与实现方法
此界面制作与公寓设置基本一致。
在这个界面中主要用到了一个Sstab控件与一个显示表中内容的Datagrid控件。
以及起到美观作用的Frame控件。
在右下角的文本框中可以输入想要添加的班级名称。
然后点击添加即可完成添加操作。
Datagrid中会立即刷新显示更新内容。
要修改某条记录时,要先对所要修改的记录进行选择,确认选择后,点击下面的修改按钮,会在下面的文本中显示出所要修改班级的名称,此时即可输入要修改的名字。
然后点击更新就会完成此操作。
Datagrid也会即时更新其内容。
删除操作更为简单,选择想要删除的班级名称,点击删除,确认后完成此操作。
添加班级源码:
"class='"&&"'"
If=FalseThen
MsgBox"此班级已存在",,"提示"
Sub
EndIf
=""
If=""Then
MsgBox"输入所要添加班级的名称",,"提示"
ExitSub
EndIf
"class")=
="class"
=""
Set=Adodc3
修改班级源码:
If="修改"Then
=
="输入想要修改的班级名称"
="更新"
=False
=False
ElseIf="更新"Then
=True
=True
="输入想要添加的班级名称"
"class")=
="修改"
EndIf
删除班级源码:
If=""Then
MsgBox"选择所
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 宿舍 管理 系统 代码 实现
![提示](https://static.bdocx.com/images/bang_tan.gif)