⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frminstitute.frm

📁 VB+access学生信息管理系统,基本完成了学生信息的添加,修改,打印,查询功能.大家互相学习吧.
💻 FRM
字号:
VERSION 5.00
Object = "{67397AA1-7FB1-11D0-B148-00A0C922E820}#6.0#0"; "MSADODC.OCX"
Object = "{CDE57A40-8B86-11D0-B3C6-00A0C90AEA82}#1.0#0"; "MSDATGRD.OCX"
Object = "{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0"; "MSCOMCTL.OCX"
Object = "{0BA686C6-F7D3-101A-993E-0000C0EF6F5E}#1.0#0"; "THREED32.OCX"
Begin VB.Form frmInstitute 
   Caption         =   "院系信息"
   ClientHeight    =   3660
   ClientLeft      =   570
   ClientTop       =   6105
   ClientWidth     =   7065
   ForeColor       =   &H00C00000&
   LinkTopic       =   "Form1"
   LockControls    =   -1  'True
   MDIChild        =   -1  'True
   MinButton       =   0   'False
   ScaleHeight     =   3660
   ScaleWidth      =   7065
   WindowState     =   2  'Maximized
   Begin MSComctlLib.StatusBar StatBar 
      Align           =   2  'Align Bottom
      Height          =   405
      Left            =   0
      TabIndex        =   2
      Top             =   3255
      Width           =   7065
      _ExtentX        =   12462
      _ExtentY        =   714
      _Version        =   393216
      BeginProperty Panels {8E3867A5-8586-11D1-B16A-00C0F0283628} 
         NumPanels       =   3
         BeginProperty Panel1 {8E3867AB-8586-11D1-B16A-00C0F0283628} 
            Object.Width           =   3881
            MinWidth        =   3881
         EndProperty
         BeginProperty Panel2 {8E3867AB-8586-11D1-B16A-00C0F0283628} 
            Object.Width           =   3528
            MinWidth        =   3528
         EndProperty
         BeginProperty Panel3 {8E3867AB-8586-11D1-B16A-00C0F0283628} 
            AutoSize        =   1
            Object.Width           =   4471
            Picture         =   "frmInstitute.frx":0000
         EndProperty
      EndProperty
   End
   Begin Threed.SSPanel SSPanel1 
      Height          =   495
      Left            =   720
      TabIndex        =   1
      Top             =   300
      Width           =   4575
      _Version        =   65536
      _ExtentX        =   8070
      _ExtentY        =   873
      _StockProps     =   15
      Caption         =   "院 系 信 息 记 录"
      ForeColor       =   8388608
      BackColor       =   12632256
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
         Name            =   "宋体"
         Size            =   15.75
         Charset         =   134
         Weight          =   700
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      BevelOuter      =   1
      Font3D          =   1
   End
   Begin MSAdodcLib.Adodc Adodc1 
      Height          =   375
      Left            =   1440
      Top             =   2760
      Visible         =   0   'False
      Width           =   3015
      _ExtentX        =   5318
      _ExtentY        =   661
      ConnectMode     =   0
      CursorLocation  =   3
      IsolationLevel  =   -1
      ConnectionTimeout=   15
      CommandTimeout  =   30
      CursorType      =   1
      LockType        =   4
      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         =   "Adodc1"
      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 MSDataGridLib.DataGrid DataGrid1 
      Bindings        =   "frmInstitute.frx":0452
      Height          =   1575
      Left            =   120
      TabIndex        =   0
      Top             =   1020
      Width           =   6435
      _ExtentX        =   11351
      _ExtentY        =   2778
      _Version        =   393216
      AllowUpdate     =   -1  'True
      AllowArrows     =   -1  'True
      DefColWidth     =   134
      HeadLines       =   2
      RowHeight       =   17
      TabAction       =   2
      AllowAddNew     =   -1  'True
      AllowDelete     =   -1  'True
      BeginProperty HeadFont {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
         Name            =   "宋体"
         Size            =   9
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
         Name            =   "宋体"
         Size            =   9
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      ColumnCount     =   2
      BeginProperty Column00 
         DataField       =   ""
         Caption         =   ""
         BeginProperty DataFormat {6D835690-900B-11D0-9484-00A0C91110ED} 
            Type            =   0
            Format          =   ""
            HaveTrueFalseNull=   0
            FirstDayOfWeek  =   0
            FirstWeekOfYear =   0
            LCID            =   2052
            SubFormatType   =   0
         EndProperty
      EndProperty
      BeginProperty Column01 
         DataField       =   ""
         Caption         =   ""
         BeginProperty DataFormat {6D835690-900B-11D0-9484-00A0C91110ED} 
            Type            =   0
            Format          =   ""
            HaveTrueFalseNull=   0
            FirstDayOfWeek  =   0
            FirstWeekOfYear =   0
            LCID            =   2052
            SubFormatType   =   0
         EndProperty
      EndProperty
      SplitCount      =   1
      BeginProperty Split0 
         ScrollBars      =   3
         BeginProperty Column00 
         EndProperty
         BeginProperty Column01 
         EndProperty
      EndProperty
   End
End
Attribute VB_Name = "frmInstitute"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Dim cn As New ADODB.Connection  '连接对象
Dim DataEdited As Boolean       '数据已编辑标志
Dim bFirstStart As Boolean      '窗体首次启动的标志

Private Sub Form_Load()
    '窗体中心定位
    Call CenterPos(StudentMIS, Me)
    Call SetAdc
    DataEdited = False
    bFirstStart = True
End Sub

Private Sub Form_Resize()
'窗体调整尺寸事件
On Error Resume Next
Const gl As Integer = 50 '间隙常数
    SSPanel1.Left = gl
    SSPanel1.Width = Me.ScaleWidth - 2 * gl
    DataGrid1.Left = gl
    DataGrid1.Width = Me.ScaleWidth - 2 * gl
    DataGrid1.Height = Me.ScaleHeight - DataGrid1.Top - StatBar.Height - 2 * gl
    '只有第一次调整窗体尺寸时才执行以下代码
    If bFirstStart Then
        DataGrid1.Refresh
        Adodc1.Refresh
        Set cn = Adodc1.Recordset.ActiveConnection '获取当前记录集的连接对象
        cn.BeginTrans '开始事务
        bFirstStart = False
    End If
End Sub

'DataGrid内部错误捕获
Private Sub DataGrid1_Error(ByVal DataError As Integer, Response As Integer)
    If DataError = 7007 Then
        MsgBox "所输字符数超过允许输入字符最大个数,参见状态栏提示!", _
               vbCritical, "错误提示"
        Response = 0 '不弹出系统错误提示框
    End If
End Sub

'设置ADO数据控件的连接属性和记录源属性
Private Sub SetAdc()
    Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" _
                             & StudentDBfile & ";Persist Security Info=False"
    Adodc1.RecordSource = "select institute_id as 学院代码,institute_name as " & _
                          " 学院名称 from institute"
End Sub

Private Sub Adodc1_FieldChangeComplete(ByVal cFields As Long, Fields As Variant, _
            ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, _
            ByVal pRecordset As ADODB.Recordset)
'字段改变完成后触发的事件
    DataEdited = True
End Sub

Private Sub Adodc1_RecordChangeComplete(ByVal adReason As ADODB.EventReasonEnum, _
            ByVal cRecords As Long, ByVal pError As ADODB.Error, _
            adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)
'记录改变完成后触发的事件
    Select Case adReason
    Case adRsnDelete, adRsnUpdate, adRsnAddNew
        DataEdited = True
    End Select
End Sub

Private Sub Adodc1_RecordsetChangeComplete(ByVal adReason As ADODB.EventReasonEnum, _
            ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, _
            ByVal pRecordset As ADODB.Recordset)
'记录集改变完成后触发的事件
    Select Case adReason
    Case adRsnAddNew, adRsnDelete, adRsnAddNew
        DataEdited = True
    End Select
End Sub

'DataGrid控件当前单元行列位置改变事件
Private Sub DataGrid1_RowColChange(LastRow As Variant, ByVal LastCol As Integer)
Dim dbrow As Long, s1$, s2$, s3$
'确定记录指针
On Error Resume Next
With Adodc1.Recordset
    If .RecordCount = 0 Then
      dbrow = .RecordCount
    Else
      dbrow = .AbsolutePosition
    End If
    s1 = "当前记录位置:" & dbrow
    s2 = "记录总数:" & Adodc1.Recordset.RecordCount
    s3 = "提示:" & Adodc1.Recordset.Fields(DataGrid1.Col).Name & "最多只允许输入" & _
         Adodc1.Recordset.Fields(DataGrid1.Col).DefinedSize & "位字符!"
    StatBar.Panels(1).Text = s1
    StatBar.Panels(2).Text = s2
    StatBar.Panels(3).Text = s3
End With
End Sub

Public Sub DeleteData()
'删除当前记录
    '当前单元在最后一行,但没有 AddNew 操作,被挂起情况下退出该过程
    If DataGrid1.AddNewMode = dbgAddNewCurrent Or Adodc1.Recordset.RecordCount = 0 Then
       Exit Sub
    End If
    Adodc1.Recordset.Bookmark = DataGrid1.Bookmark
    Adodc1.Recordset.Delete
    '设置修改标志
    DataEdited = True
    DataGrid1.Refresh
End Sub

Public Sub SaveData()
'保存全部修改
On Error GoTo errhandler:
    If Adodc1.Recordset.RecordCount > 0 Then Adodc1.Recordset.MoveFirst
    Adodc1.Recordset.UpdateBatch
    cn.CommitTrans '提交事务
    DataEdited = False
    DataGrid1.Refresh
    Adodc1.Refresh
    Set cn = Adodc1.Recordset.ActiveConnection '获取当前记录集的连接对象
    cn.BeginTrans '开始一个新事务
    Exit Sub
errhandler:
    '显示与数据库操作规则有关的错误信息
    Call ShowDbRuleErrInf("学院代码")
End Sub

Public Sub CancelData()
'还原全部修改
On Error GoTo errhandler:
    If Adodc1.Recordset.RecordCount > 0 Then Adodc1.Recordset.MoveFirst
    Adodc1.Recordset.CancelBatch
    cn.RollbackTrans  '回滚事务
    DataEdited = False
    DataGrid1.Refresh
    Adodc1.Refresh
    Set cn = Adodc1.Recordset.ActiveConnection '获取当前记录集的连接对象
    cn.BeginTrans '开始一个新事务
    Exit Sub
errhandler:
    '显示与数据库操作规则有关的错误信息
    Call ShowDbRuleErrInf("学院代码")
End Sub

Public Sub ClearData()
'删空当前记录集
    Call DBRecordset_Delete(Adodc1.Recordset)
    DataGrid1.Refresh
    '设置修改标志
    DataEdited = True
End Sub

'窗体卸载前查询事件
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
Dim s$, b%
    If DataEdited = True Then
        s$ = "数据已修改,是否保存?"
        b = MsgBox(s$, vbYesNoCancel + vbQuestion, "操作提示")
        Select Case b
        Case vbYes            '保存修改
            Call SaveData
        Case vbNo             '取消修改
            Call CancelData
        Case vbCancel
            Cancel = True     '不关闭窗体
            Exit Sub
        End Select
    End If
    '"操作"菜单、按钮禁用
    Call InitMenuAndToolbars(False)
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -