dlgach.frm
来自「管理信息系统my sql++ visual bassic」· FRM 代码 · 共 342 行
FRM
342 行
VERSION 5.00
Object = "{67397AA1-7FB1-11D0-B148-00A0C922E820}#6.0#0"; "MSADODC.OCX"
Begin VB.Form DlgAch
BorderStyle = 3 'Fixed Dialog
Caption = "成绩录入"
ClientHeight = 2880
ClientLeft = 3075
ClientTop = 2505
ClientWidth = 5400
Icon = "DlgAch.frx":0000
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 2880
ScaleWidth = 5400
ShowInTaskbar = 0 'False
Begin MSAdodcLib.Adodc Adodc1
Height = 375
Left = 120
Top = 2400
Width = 3855
_ExtentX = 6800
_ExtentY = 661
ConnectMode = 0
CursorLocation = 3
IsolationLevel = -1
ConnectionTimeout= 15
CommandTimeout = 30
CursorType = 3
LockType = 3
CommandType = 8
CursorOptions = 0
CacheSize = 50
MaxRecords = 0
BOFAction = 0
EOFAction = 0
ConnectStringType= 1
Appearance = 1
BackColor = -2147483643
ForeColor = -2147483640
Orientation = 0
Enabled = -1
Connect = ""
OLEDBString = ""
OLEDBFile = ""
DataSourceName = ""
OtherAttributes = ""
UserName = ""
Password = ""
RecordSource = ""
Caption = ""
BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "宋体"
Size = 9
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
_Version = 393216
End
Begin VB.Frame Frame2
Caption = "学生成绩"
Height = 1815
Left = 120
TabIndex = 1
Top = 480
Width = 5175
Begin VB.ComboBox Combo1
Height = 300
Left = 1200
TabIndex = 7
Top = 300
Width = 2295
End
Begin VB.TextBox Text3
Height = 300
Left = 1200
TabIndex = 6
Top = 720
Width = 2295
End
Begin VB.TextBox Text4
DataSource = "Adodc1"
Height = 300
Left = 1200
TabIndex = 5
Text = "Text4"
Top = 1140
Width = 2295
End
Begin VB.CommandButton Command4
Caption = "增加"
Height = 375
Left = 3600
TabIndex = 4
Top = 300
Width = 1455
End
Begin VB.CommandButton Command5
Caption = "更改"
Height = 375
Left = 3600
TabIndex = 3
Top = 720
Width = 1455
End
Begin VB.CommandButton Command6
Caption = "删除"
Height = 375
Left = 3600
TabIndex = 2
Top = 1140
Width = 1455
End
Begin VB.Label Label3
Caption = "学号:"
Height = 255
Left = 240
TabIndex = 10
Top = 780
Width = 735
End
Begin VB.Label Label4
Caption = "课程:"
Height = 255
Left = 240
TabIndex = 9
Top = 360
Width = 855
End
Begin VB.Label Label5
Caption = "成绩:"
Height = 255
Left = 240
TabIndex = 8
Top = 1200
Width = 735
End
End
Begin VB.CommandButton OKButton
Caption = "关闭"
Default = -1 'True
Height = 375
Left = 4080
TabIndex = 0
Top = 2400
Width = 1215
End
Begin VB.Label Label7
AutoSize = -1 'True
DataSource = "Adodc1"
Height = 180
Left = 3240
TabIndex = 14
Top = 120
Width = 90
End
Begin VB.Label Label6
AutoSize = -1 'True
Caption = "课程ID:"
Height = 180
Left = 2520
TabIndex = 13
Top = 120
Width = 630
End
Begin VB.Label Label2
AutoSize = -1 'True
DataSource = "Adodc1"
Height = 180
Left = 840
TabIndex = 12
Top = 120
Width = 90
End
Begin VB.Label Label1
AutoSize = -1 'True
Caption = "学生ID:"
Height = 180
Left = 120
TabIndex = 11
Top = 120
Width = 630
End
Begin VB.Line Line1
BorderColor = &H00FFFFFF&
X1 = 5280
X2 = 120
Y1 = 360
Y2 = 360
End
Begin VB.Line Line2
BorderColor = &H00404040&
X1 = 120
X2 = 5280
Y1 = 340
Y2 = 340
End
End
Attribute VB_Name = "DlgAch"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Dim rs As ADODB.Recordset
Dim SD As Boolean
Private Sub Combo1_Click()
On Error GoTo errh
Dim temp As Integer
If Combo1.Text <> "" Then
Set rs = cn.Execute("SELECT 课程ID FROM 课程 WHERE 课程名称=" & "'" & Combo1.Text & "'")
If rs.EOF Then
rs.Close
Exit Sub
End If
temp = rs.Fields(0).Value
rs.Close
If Label2.Caption = "" Then
Label7.Caption = temp
Else
If checkclass(temp, Int(Label2.Caption)) Then
Label7.Caption = temp
Else
MsgBox "这个课程的成绩已经有了,不能加入", vbOKOnly, "警告"
End If
End If
End If
Exit Sub
errh:
MsgBox Err.Description
End Sub
Private Sub Command4_Click()
On Error GoTo errh
SD = True
If Text3.Text <> "" Then
Text3.Text = Left$(Text3.Text, Len(Text3.Text) - 1)
End If
Adodc1.Recordset.AddNew
Exit Sub
errh:
MsgBox Err.Description
End Sub
Private Sub Command5_Click()
On Error GoTo errh
SD = False
Adodc1.Recordset.Update
Exit Sub
errh:
MsgBox Err.Description
End Sub
Private Sub Command6_Click()
On Error GoTo errh
If MsgBox("你的操作将会删除当前的纪录,你确信吗?", vbOKCancel, "警告") = vbOK Then
SD = True
Adodc1.Recordset.Delete
Adodc1.Recordset.MoveFirst
End If
Exit Sub
errh:
MsgBox Err.Description
End Sub
Private Sub Form_Load()
On Error GoTo errh
MakeCenter DlgAch
Set rs = cn.Execute("SELECT 课程名称,课程ID FROM 课程")
rs.MoveFirst
Do
Combo1.AddItem rs.Fields(0).Value
rs.MoveNext
Loop Until rs.EOF
Combo1.Text = "请选择课程"
rs.Close
Adodc1.ConnectionString = "Provider=SQLOLEDB;Data Source=INET;User Id=sa;PWd=322167;Initial Catalog=学生信息"
Adodc1.RecordSource = "SELECT * FROM 成绩"
Label2.DataField = "学生ID"
Label7.DataField = "课程ID"
Text4.DataField = "成绩"
Exit Sub
errh:
MsgBox Err.Description
End Sub
Private Sub Form_Unload(Cancel As Integer)
On Error Resume Next
Adodc1.Recordset.Close
Set rs = Nothing
End Sub
Private Sub OKButton_Click()
Unload Me
End Sub
Private Sub Text3_Change()
On Error GoTo errh
If Len(Text3.Text) = 8 Then
Dim i As Integer
Set rs = cn.Execute("SELECT 学生ID FROM 学生 WHERE 学号=" & "'" & Text3.Text & "'")
If rs.EOF Then
rs.Close
Exit Sub
End If
i = rs.Fields(0).Value
rs.Close
If Label7.Caption = "" Then
Label2.Caption = i
Exit Sub
End If
If checkclass(Int(Label7.Caption), i) Then
Label2.Caption = i
Else
MsgBox "这个课程的成绩已经有了,不能加入", vbOKOnly, "警告"
End If
End If
Exit Sub
errh:
MsgBox Err.Description
End Sub
Private Function checkclass(k As Integer, X As Integer) As Boolean '检测一个学生的课程是否重复
On Error GoTo errh
Set rs = cn.Execute("SELECT 课程ID FROM 成绩 WHERE 学生ID=" & X & "AND 课程ID=" & k)
If rs.EOF Then
rs.Close
checkclass = True
Exit Function
End If
checkclass = False
rs.Close
Exit Function
errh:
rs.Close
MsgBox Err.Description
End Function
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?