毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 论文 >> 正文

VB+Access学生公寓管理系统 第10页

更新时间:2007-11-6:  来源:毕业论文

4.18请假记录删除效果图

②界面制作与实现方法

这个窗体与上面不同的是多了一个姓名条件,其它的都基本一致。由于在一个公寓中会有很多人要得名,但是在某一公寓某一寝室中只会有一个人,这也是一个公寓分配住宿人员时的基本标准,因为这样也便于公寓本身的管理。此删除窗体只有单条删除与上面不同,单条删除部分代码如下:

If (MsgBox("你真的想删除日期为  " & Combo1.Text & "   公寓为  " & Text1.Text & "   寝室为  " & Text2.Text & "   姓名为  " & Text3.Text & "  的请假记录吗?", vbOKCancel, "系统提示")) = vbOK Then

Adodc1.Refresh

Adodc1.Recordset.ActiveConnection.Execute "delete from qingjia where 日期='" & Trim(s) & "'and 公寓='" & Trim(Text1.Text) & "'and 寝室='" & Trim(Text2.Text) & "'and 姓名='" & Trim(Text3.Text) & "'"   ', , adExecuteNoRecords

Adodc1.Recordset.Update

Combo1.Text = ""

Text1.Text = ""

Text2.Text = ""

MsgBox "删除成功", , "系统提示"

End If

4.8.3 违规删除

①效果图

4.19违规记录删除效果图

②界面制作与实现方法

违规删除操作与请假删除操作基本一致,不同之处只是在于后台对不同的表进行处理,前台界面大体相同。其实现方法与上现的也差不太多,这里就不在叙述。

单条删除记录:

Dim sql As String

Dim s As String

Dim panduan As Boolean

If Combo1.Text = "" And Text1.Text = "" And Text2.Text = "" Then

MsgBox "请输入删除条件!", , "提示"

Exit Sub

End If

s = Combo1.Text

If (MsgBox("你真的想删除日期为  " & Combo1.Text & "   公寓为  " & Text1.Text & "   寝室为  " & Text2.Text & "   姓名为  " & Text3.Text & "  的违规记录吗?", vbOKCancel, "系统提示")) = vbOK Then

Adodc1.Refresh

Adodc1.Recordset.ActiveConnection.Execute "delete from weigui where 日期='" & Trim(s) & "'and 公寓='" & Trim(Text1.Text) & "'and 寝室='" & Trim(Text2.Text) & "' and 姓名='" & Trim(Text3.Text) & "'"   ', , adExecuteNoRecords

Adodc1.Recordset.Update

Combo1.Text = ""

Text1.Text = ""

Text2.Text = ""

MsgBox "删除成功", , "系统提示"

End If

Unload Me

成批删除记录:

If (MsgBox("你真的想删除日期为  " & Combo2.Text & "  的记录吗?", vbOKCancel, "系统提示")) = vbOK Then

Adodc1.Refresh

Adodc1.Recordset.ActiveConnection.Execute "delete from weigui where 日期='" & Trim(Combo2.Text) & "'"

Combo2.Text = ""

MsgBox "删除成功", , "系统提示"

End If

Unload Me

删除所有记录:

If (MsgBox("你真的想删除所有的记录吗?一旦删除即不可恢复", vbOKCancel, "系统提示")) = vbOK Then

For I = 1 To Adodc1.Recordset.RecordCount

Adodc1.Recordset.Delete

Adodc1.Recordset.MoveNext

Next I

End If

MsgBox "删除成功", , "系统提示"

Unload Me

4.8.4 资产删除

①效果图

4.20资产删除效果图

② 界面制作与实现方法

与卫生记录删除不同的是寝室改为了名称。值得注意的是,此处公寓与名称都要人工输入,所以在输入的时候要注意不要有多余字符,否则会出错删除不掉的情况。单条删除部分源码如下:

If (MsgBox("你真的想删除日期为  " & Combo1.Text & "   公寓为  " & Text1.Text & "   名称为  " & Text2.Text & "  的资产记录吗?", vbOKCancel, "系统提示")) = vbOK Then

Adodc1.Refresh

Adodc1.Recordset.ActiveConnection.Execute "delete from zichan where 日期='" & Trim(s) & "'and 公寓='" & Trim(Text1.Text) & "'and 名称='" & Trim(Text2.Text) & "'"   ', , adExecuteNoRecords

Adodc1.Recordset.Update

Combo1.Text = ""

Text1.Text = ""

Text2.Text = ""

MsgBox "删除成功", , "系统提示"

End If

4.9值班记录

   值班记录这项可以说是此软件的一个新增功能。它的界面小巧,并且它可以让值班人员记录前天发生的一些事情,字数在1000字左右。可以说是一个小型的日记本。

4.9.1 值班记录

①值班记录效果图

4.21值班记录效果图

② 实现思想与功能

此窗体的功能以及其源代码是经过修改之后而形成的,源文件是一个电子记事本,发现后经过修改后做出一个日记本。

在上面的日期后面的文本框中,你可以输入如窗口标题后面所示的日期格式后,点击查看,即可以查看到所选日期的详细记录。这是一种查询方法,当然你也可以用右面简单的上一条与下一条进行快速查看,但是它只能查看当日日期起开始的记录,如果与你所想要查看的日期相差很远,那么你就需要使用第一种方法了。

这个日记本还支持修改与删除功能。当你想编辑或删除某一日期的时候时,你需要用查看方法找到该记录,然后对当前记录使用编辑或删除即可完成操作。删除后,记录即不可恢复,且此日记目前还没有备份功能,慎重操作。

如果你今天值班,还没有写值班记录,那么你可以点击增加按钮,开始写当日的值班记录,说明的是,每天只可以写一次记录。当你写完今天记录后,在点击增加时会提示你今日已写完。但是你可以对今日记录进行编辑修改。

本程序源码较为复杂,主要都是对文件进行操作,并没有把记录添加到数据库中,所以不支持备份操作,且本窗体中的操作程序还用到了一个模块。部分代码如下:

查看上一条记录:

If giCurrentRecord > 1 Then

      giCurrentRecord = giCurrentRecord - 1

   ReadData (giCurrentRecord)

End If

查看下一条记录:

If giCurrentRecord < giRecordCount Then

   giCurrentRecord = giCurrentRecord + 1

ReadData (giCurrentRecord)

End If

查询数据:

    Dim I%

    For I = 1 To giRecordCount

        If goDiarys(I).fldDate = sql Then

        giCurrentRecord = I

        FindData = True

        Exit For

        End If

    Next

    ReadData giCurrentRecord

修改数据:  

Dim iFreefile%, I%

    iFreefile = FreeFile()

    Open gsPath & "DATA.DAT" For Random As #iFreefile Len = Len(goDiary)

    goDiarys(giCurrentRecord).fldDate = frminput.txtDate

    goDiarys(giCurrentRecord).fldMemo = frminput.txtMemo

    goDiary = goDiarys(giCurrentRecord)

      Put #iFreefile, giCurrentRecord, goDiary

    ReadData (giCurrentRecord)

    Close #iFreefile

    ModifyData = True

删除日记中的记录:

If txtDate = "" Then

MsgBox "请选择记录!", , "每日一记"

Exit Sub

End If

 Dim Result

  If giRecordCount = 0 Then Exit Sub

  Result = MsgBox("确定删除记录吗?不可恢复", vbQuestion + vbYesNo, "电子日记本")

  If Result = vbYes Then

  DeleteData

  gbFirst = False

  If giCurrentRecord > 1 Then giCurrentRecord = giCurrentRecord - 1

  Form_Load

  End If

4.9.2 增加记录

①增加记录效果图

4.22增加记录效果图

② 实现思想与程序源码

日期后显示当前日期,但是可以修改。每篇记录的字数要求在1000字以内。支持对当前字符输入的统计,确定完成本日记录后,点击保存即可。

部分代码如下:

Dim bSaved As Boolean, bCF

If txtDate = "" Or txtMemo = "" Then Exit Sub ' 如果记录未填,则退出

If riji.Tag = "addnew" Then

    If giRecordCount >= 1 Then        '新增时,检查记录是否重复

       gsSql = frminput.txtDate

       bCF = FindData(gsSql)

       If bCF Then

         MsgBox "今天你已经写过日记了!", vbExclamation + vbOKOnly, "每日一记"

         txtMemo.SetFocus

         Exit Sub

       End If

    End If

    giRecordCount = giRecordCount + 1

    bSaved = WriteData()

ElseIf riji.Tag = "modify" Then '

    bSaved = ModifyData()

End If

If bSaved = True Then

  AddNext = MsgBox("保存完毕!", vbExclamation + vbOKOnly, "每日一记")

End If

Unload Me

由于此段代码中用到了一个模块,在模块中定义了很多过程,各过程实现功能及代码如下所示:

读取数据:

Public Sub ReadData(curRecord As Integer)  '读取数据

On Error Resume Next

Dim strcaption$

   riji.txtDate = goDiarys(curRecord).fldDate

   riji.txtMemo = goDiarys(curRecord).fldMemo

   strcaption = "每日一记   [" & Date & "]  " & Time & "  " & WeekdayName(Weekday(Date)) & "  记录:" & giCurrentRecord & "/" & giRecordCount

   riji.Caption = strcaption

End Sub

查询数据:

Public Function FindData(sql As String) As Boolean '查询数据

On Error Resume Next

    Dim I%

    For I = 1 To giRecordCount

        If goDiarys(I).fldDate = sql Then

        giCurrentRecord = I

        FindData = True

        Exit For

        End If

    Next

    ReadData giCurrentRecord

End Function

新增数据:

Public Function WriteData() As Boolean '新增数据

On Error Resume Next

     Dim iFreefile%, I%

    iFreefile = FreeFile()

    Open gsPath & "DATA.DAT" For Random As #iFreefile Len =  en(goDiary)

    ReDim Preserve goDiarys(giRecordCount)

    goDiarys(giRecordCount).fldDate = frminput.txtDate

    goDiarys(giRecordCount).fldMemo = frminput.txtMemo

    goDiary = goDiarys(giRecordCount)

      Put #iFreefile, giRecordCount, goDiary

    giCurrentRecord = giRecordCount

    ReadData (giCurrentRecord)

    Close #iFreefile

    WriteData = True

End Function

修改数据:

Public Function ModifyData() As Boolean '修改数据

On Error Resume Next

     Dim iFreefile%, I%

    iFreefile = FreeFile()

    Open gsPath & "DATA.DAT" For Random As #iFreefile Len =len(goDiary)

    goDiarys(giCurrentRecord).fldDate = frminput.txtDate

    goDiarys(giCurrentRecord).fldMemo = frminput.txtMemo

    goDiary = goDiarys(giCurrentRecord)

      Put #iFreefile, giCurrentRecord, goDiary

    ReadData (giCurrentRecord)

    Close #iFreefile

    ModifyData = True

End Function

删除数据:

Public Sub DeleteData() '删除数据

On Error Resume Next

   Dim iFreefile%, I%, J%

   I = 1: J = 1

    iFreefile = FreeFile()

   Open gsPath & "temp.dat" For Random As #iFreefile Len = Len(goDiary)

   goDiarys(giCurrentRecord).fldMemo = "IWantToKillIt*" & goDiarys(giCurrentRecord).fldMemo  '加删除标记

   For I = 1 To giRecordCount                   '无删除标记的记录保存到临时文件,TEMP.DAT

      If Left(goDiarys(I).fldMemo, 14) <> "IWantToKillIt*" Then

      goDiary = goDiarys(I)

      Put #iFreefile, J, goDiary              '在此必须有I,J两个变量,因为使用二进制保存文件,

      J = J + 1                               '1开始到后面,中间如有间隔就会出现乱码

      End If

   Next

   Close #iFreefile

   Kill gsPath & "data.dat"

   Name gsPath & "temp.dat" As gsPath & "data.dat"

   riji.txtDate = ""

   riji.txtMemo = ""

End Sub

说明:由于本人能力有限,对文件部分还不算是很了解,这个功能的实现主要是借用了网上的一个电子记事本。本人只是对其做了一些修改,做成了这个每日一记,但个人认为此功能还算是可以。

4.10 Help制作

Help文档的制作也标志着本软件基本完成。制作help文档需要一个专业制作软件,本人使用的是破解版的QuickCHM,此软件无论在功能上还在是操作上用起来都是很方便。

QuickCHM软件的界面及其使用如下:

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]  ... 下一页  >> 

VB+Access学生公寓管理系统 第10页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。