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

期末考试日程管理系统 第3页

更新时间:2009-8-4:  来源:毕业论文
期末考试日程管理系统 第3页
If Grid1.Cell(1, 1).Text = "精确查询" Then
Grid1.ComboBox(3).Clear '以下清除表格中combo集中的内容,并加入以下内容
Grid1.ComboBox(3).AddItem "="
Grid1.ComboBox(3).AddItem ">"
Grid1.ComboBox(3).AddItem "<"
Grid1.ComboBox(3).AddItem ">="
Grid1.ComboBox(3).AddItem "<="
Grid1.ComboBox(3).AddItem "<>"
End If
End Sub
Dim moshi As Integer '这是主要判断选择模式(精确还模糊)
Select Case Grid1.Cell(1, 2).Text '以下主要通过多项选择来决定SQL语句的组织方法
 Case "年级", "课程名", "考试日期", "时间", "系名" '此处几个都属通用的SQL语句,所以可以放在一起
 If moshi = 0 Then '通过已确定的模糊查询还是精确查询来决定语句的组成
  strsql = "select * from 生成 where " & Grid1.Cell(1, 2).Text & Grid1.Cell(1, 3).Text & "'" & Grid1.Cell(1, 4).Text & "'"
Else
   strsql = "select * from 生成 where " & Grid1.Cell(1, 2).Text & " " & Grid1.Cell(1, 3).Text & " '%" & Grid1.Cell(1, 4).Text & "%'"
 End If
  numberkc = 6 '设置字段长和表格的列数
  Grid2.Cols = numberkc + 1
 Case "教室号"
  If moshi = 0 Then
  strsql = "select * from 生成 where " & Grid1.Cell(1, 2).Text & " like '%" & Grid1.Cell(1, 4).Text & "%'"
  '关于教室语句中用到%号,因为每个系并不是一个考场,所以在教定中含有多个教室,所以需要%来提取
 Else
   strsql = "select * from 生成 where " & Grid1.Cell(1, 2).Text & " " & Grid1.Cell(1, 3).Text & " '%" & Grid1.Cell(1, 4).Text & "%'"
 End If
  numberkc = 6
  Grid2.Cols = numberkc + 1
 Case "教师"
strsql = "select 监考教师.教室号,教师姓名,日期,监考教师.时间,课程名,系名,年级 from 监考教师,生成
where 考试日期=日期 and 监考教师.时间=生成.时间 and 教师姓名 like '%" & Grid1.Cell(1, 4).Text & "%'"
numberkc = 7
  Grid2.Cols = numberkc + 1
  Case "楼层"
  If moshi = 0 Then
   strsql = "select 考试日期,时间,课程名,生成.教室号,系名,年级,楼层 from 教室,生成 where 楼层='" & Grid1.Cell(1, 4).Text & "'"
  Else
     strsql = "select 考试日期,时间,课程名,生成.教室号,系名,年级,楼层 from 教室,生成 where 楼层 like '%" & Grid1.Cell(1, 4).Text & "%'"
  End If
   numberkc = 7
   Grid2.Cols = numberkc + 1
 
End Select
   If Grid1.Cell(1, 5).Text <> "" Then '这是确定是否有附加条件,有则将其并入语句中一起执行
    strsql = strsql & " " & Grid1.Cell(1, 5).Text
   End If
Grid2.Rows = 1
Set ks1 = cnn.Execute(strsql) '这里执行已组织好的语句
For i = 1 To numberkc '通来字段的长度,将各字段应有的名称写入表格
Grid2.Cell(0, i).Text = ks1.Fields(i - 1).Name
Next
Do While Not ks1.EOF '以下是将查询到的内容依次写入表格
Grid2.Rows = Grid2.Rows + 1
For i = 1 To numberkc
Grid2.Cell(Grid2.Rows - 1, i).Text = ks1.Fields(i - 1)
Next
ks1.MoveNext
Loop
Label1.Caption = "符合条件的记录数:" & Grid2.Rows - 1 & "条!"
Exit Sub
finish:
MsgBox Err.Description
End Sub
(4)查看窗体
进入查询窗体界面,如图11所示,上面含有打印的选项按钮。选中打印按钮,即可实现对目标的打印 
图12 查看窗体界面
Dim m, n, X, Y, len1 As Integer
Dim str1, sstr1 As String
Private Sub Form_Load()
Grid1.SetRegisterInformation "CNwinndy", "W]vyY-nonvk-u\nty-Zbl_e-`hms^" '进行注册
With Grid1  '以下是对表格控件进行一些颜色和字体等设置
    .AllowUserResizing = True
.FixedRowColStyle = Flat
    .ScrollBarStyle = Flat
    .DefaultFont.Name = "Tahoma"
    .DefaultFont.SIZE = 10
    .BackColorFixed = RGB(84, 201, 134) 'RGB(90, 158, 214)
    .BackColorFixedSel = RGB(84, 201, 134) 'RGB(110, 180, 230)
    .BackColorBkg = RGB(84, 201, 134) 'RGB(90, 158, 214)
    .BackColorScrollBar = RGB(231, 235, 247)
    .BackColor1 = RGB(231, 235, 247)
    .BackColor2 = RGB(239, 243, 255)
    .GridColor = RGB(148, 190, 231)
    .Column(0).Width = 120
    '.RowHeight(0) = 0
    .ReadOnly = True
End With
Me.BackColor = RGB(84, 201, 134)
Generalview '在窗体启动时自动调用过程
End Sub

Set ks1 = cnn.Execute("select * from 日程设定 order by  序号 asc")
'通过SQL的查询语句将日程设定的日期和时间写入表格
 For i = 1 To Grid1.Cols - 1
 Grid1.Column(i).Width = 120
 Grid1.Cell(0, i).Text = ks1.Fields(0) & vbCrLf & ks1.Fields(1)
 ks1.MoveNext
 Next
m = 1 '变量初始化
 n = 0
 X = 1
 Set ks2 = cnn.Execute("SELECT DISTINCT 系名 from 课程")
 Do While Not ks2.EOF
For i = 1 To 4 '通过固定的1-4年级和系名来确定可以存在的年级
 Set ks3 = cnn.Execute("select count(*) from 课程 where 系名='" & ks2.Fields(0) & "' and 年级='" & i & "'")
 If ks3.Fields(0) > 0 Then
 Grid1.Rows = Grid1.Rows + 1
 Grid1.RowHeight(Grid1.Rows - 1) = 120
 Grid1.Cell(Grid1.Rows - 1, 0).Text = ks2.Fields(0) & vbCrLf & i & "年级"
 Set ks3 = cnn.Execute("select * from 生成 where 系名='" & ks2.Fields(0) & "' and 年级='" & i & "' order by
序号 asc")
 '这里开始查询对应班级的考试安排情况
  For n = 1 To len1 '由于每个系并不一定就是一个考场教室,所以在用逗号分开的各教室号在次区别开来
   If Mid(ks3.Fields(3), n, 1) = "," Then
    str1 = Mid(ks3.Fields(3), m, Y - 1)
    m = n + 1
    Y = 0
    '查找并合并对应的监考教师并写入表格
Set ks4 = cnn.Execute("select * from 监考教师 where 日期='" & ks3.Fields(0) & "' and 时间='" & ks3.Fields
(1) & "' and 教室号='" & str1 & "'")
    sstr1 = sstr1 & str1 & "(" & ks4.Fields(1) & "),"
    End If
    Y = Y + 1
  Next
    str1 = Mid(ks3.Fields(3), m, Y - 1)
    m = n + 1
    Y = 0
    Set ks4 = cnn.Execute("select * from 监考教师 where 日期='" & ks3.Fields(0) & "' and 时间='" & ks3.Fields(1) & "' and 教室号='" & str1 & "'")
    sstr1 = sstr1 & str1 & "(" & ks4.Fields(1) & ")"
    Grid1.Cell(Grid1.Rows - 1, j).Text = ks3.Fields(2) & vbCrLf & "教室:" & ks3.Fields(3) & vbCrLf & "监考:" & sstr1
    sstr1 = ""
    ks3.MoveNext
 Loop
 End If
Next
ks2.MoveNext
Loop
 Grid1.Range(0, 0, Grid1.Rows - 1, Grid1.Cols - 1).WrapText = True
Exit Sub
finish:
MsgBox Err.Description
End Sub
Private Sub Form_Resize()
If Me.WindowState <> 1 Then
    Grid1.Left = (Me.Width - Grid1.Width) / 2
    Grid1.Width = (Me.Width / 2) + Grid1.Left
    Grid1.Left = (Me.Width - Grid1.Width) / 2
    Grid1.Top = 600
    Grid1.Height = Me.Height - Grid1.Top - 600
    XPButton1.Left = (Me.Width - XPButton1.Width) / 2
End If
End Sub
Private Sub Grid1_AfterReorderColumn(ByVal OriginalPosition As Long, ByVal NewPosition As Long)
End Sub
Private Sub print_Click()
On Error GoTo finish
    '设置打印区域
    Grid1.PageSetup.PrintFixedRow = True '设定是否允许打印第0行
    Grid1.PageSetup.PrintFixedColumn = True '是否打印第0列
    Grid1.PageSetup.PrintRows = Grid1.Rows - 1 '需要打印的总行数
    Grid1.PageSetup.PrintColumns = Grid1.Cols - 1 '需要打印的总列数
    Grid1.PageSetup.PrintGridlines = True '是否显示中间的分隔线,即表格线
    'Grid1.AutoRedraw = True
    Grid1.PageSetup.Orientation = cellLandscape '采用横幅打印还是竖行打印
    'Grid1.PrintDialog
    Grid1.PrintPreview '打印预览
    Grid1.Refresh
    Exit Sub
finish:
    MsgBox Err.Description
End Sub

Private Sub XPButton1_Click()
Call print_Click
End Sub
(5)课程管理窗体
当我们进入课程管理窗体时,如图12所示,其中窗体的右部有菜单选项,分别有增加,保存,删除和退出,点击任意按钮,即可进行相关的操作

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

期末考试日程管理系统 第3页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

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