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

📄 frmreaderquery.frm

📁 实现某班级的图书信息管理
💻 FRM
字号:
VERSION 5.00
Object = "{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0"; "MSCOMCTL.OCX"
Begin VB.Form FrmReaderQuery 
   BorderStyle     =   1  'Fixed Single
   Caption         =   "读者借阅查阅"
   ClientHeight    =   4560
   ClientLeft      =   45
   ClientTop       =   330
   ClientWidth     =   6600
   LinkTopic       =   "Form1"
   LockControls    =   -1  'True
   MaxButton       =   0   'False
   MDIChild        =   -1  'True
   MinButton       =   0   'False
   ScaleHeight     =   4560
   ScaleWidth      =   6600
   Begin VB.Data Datamessage 
      Caption         =   "Data1"
      Connect         =   "Access 2000;"
      DatabaseName    =   ""
      DefaultCursorType=   0  'DefaultCursor
      DefaultType     =   2  'UseODBC
      Exclusive       =   0   'False
      Height          =   345
      Left            =   120
      Options         =   0
      ReadOnly        =   0   'False
      RecordsetType   =   1  'Dynaset
      RecordSource    =   ""
      Top             =   3600
      Visible         =   0   'False
      Width           =   1140
   End
   Begin VB.Data DataQuery 
      Caption         =   "Data1"
      Connect         =   "Access"
      DatabaseName    =   ""
      DefaultCursorType=   0  'DefaultCursor
      DefaultType     =   2  'UseODBC
      Exclusive       =   0   'False
      Height          =   495
      Left            =   1560
      Options         =   0
      ReadOnly        =   0   'False
      RecordsetType   =   1  'Dynaset
      RecordSource    =   ""
      Top             =   2640
      Visible         =   0   'False
      Width           =   2775
   End
   Begin VB.VScrollBar vsl 
      Height          =   2055
      Left            =   5640
      Max             =   12
      TabIndex        =   8
      Top             =   1680
      Width           =   375
   End
   Begin VB.TextBox TxtBQ 
      Height          =   375
      Index           =   0
      Left            =   360
      TabIndex        =   7
      Text            =   "Text2"
      Top             =   1320
      Width           =   1335
   End
   Begin VB.CommandButton CmdExit 
      Caption         =   "关闭"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   9
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   375
      Left            =   4440
      TabIndex        =   6
      Top             =   3720
      Width           =   855
   End
   Begin VB.CommandButton CmdNext 
      Caption         =   "下一个"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   9
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   375
      Left            =   2400
      TabIndex        =   5
      Top             =   3720
      Width           =   855
   End
   Begin VB.CommandButton CmdPrevious 
      Caption         =   "上一个"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   9
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   375
      Left            =   1080
      TabIndex        =   4
      Top             =   3720
      Width           =   855
   End
   Begin VB.TextBox TxtReaderName 
      Height          =   375
      Left            =   3840
      TabIndex        =   3
      Text            =   "Text1"
      Top             =   240
      Width           =   1455
   End
   Begin VB.ComboBox CmbReaderindex 
      Height          =   315
      Left            =   1320
      TabIndex        =   0
      Text            =   "Combo1"
      Top             =   240
      Width           =   1335
   End
   Begin MSComctlLib.StatusBar StatusBar1 
      Align           =   2  'Align Bottom
      Height          =   375
      Left            =   0
      TabIndex        =   9
      Top             =   4185
      Width           =   6600
      _ExtentX        =   11642
      _ExtentY        =   661
      _Version        =   393216
      BeginProperty Panels {8E3867A5-8586-11D1-B16A-00C0F0283628} 
         NumPanels       =   3
         BeginProperty Panel1 {8E3867AB-8586-11D1-B16A-00C0F0283628} 
            Object.Width           =   5292
            MinWidth        =   5292
            Text            =   "当前状态:读者借阅询。"
            TextSave        =   "当前状态:读者借阅询。"
         EndProperty
         BeginProperty Panel2 {8E3867AB-8586-11D1-B16A-00C0F0283628} 
            Object.Width           =   4057
            MinWidth        =   4057
         EndProperty
         BeginProperty Panel3 {8E3867AB-8586-11D1-B16A-00C0F0283628} 
            Object.Width           =   19599
            MinWidth        =   19599
            Text            =   "帮助请按F1"
            TextSave        =   "帮助请按F1"
         EndProperty
      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
   End
   Begin VB.Label Label3 
      BorderStyle     =   1  'Fixed Single
      Caption         =   "  返还时间"
      Height          =   375
      Index           =   2
      Left            =   4320
      TabIndex        =   12
      Top             =   840
      Width           =   1335
   End
   Begin VB.Label Label3 
      BorderStyle     =   1  'Fixed Single
      Caption         =   "   图书名称"
      Height          =   375
      Index           =   1
      Left            =   1680
      TabIndex        =   11
      Top             =   840
      Width           =   2655
   End
   Begin VB.Label Label3 
      BorderStyle     =   1  'Fixed Single
      Caption         =   "  借阅时间"
      Height          =   375
      Index           =   0
      Left            =   360
      TabIndex        =   10
      Top             =   840
      Width           =   1335
   End
   Begin VB.Label Label2 
      Caption         =   "读者姓名"
      Height          =   495
      Left            =   3000
      TabIndex        =   2
      Top             =   360
      Width           =   1215
   End
   Begin VB.Label Label1 
      Caption         =   "读者编号"
      Height          =   495
      Left            =   120
      TabIndex        =   1
      Top             =   240
      Width           =   1095
   End
End
Attribute VB_Name = "FrmReaderQuery"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False

 '************************************************************************
     '本窗本用于读者借阅查询。使用动态加载文本框,
 '*************************************************************************

Option Explicit
Private rsRQuery As Recordset
Private rs As Recordset
Private Sub CmbReaderindex_Change()
    Dim i, j As Integer
    Dim ct, pos As Integer
    With rs
        If cmbReaderindex = "" Then
            Exit Sub
        End If
        .FindFirst "readerindex =" & cmbReaderindex
        ct = .RecordCount
        
        pos = .AbsolutePosition
       
        If .NoMatch Then
            StatusBar1.Panels(1).Text = "提示:该读者无借阅记录。"
            StatusBar1.Panels(2).Text = "提示:该读者无借阅记录。"
        Else
            StatusBar1.Panels(2).Text = "当前记录位置:" & pos + 1 & "/" & ct
        End If
    End With
    If Not IsNumeric(cmbReaderindex) Then
        MsgBox "编号为数字!", vbOKOnly + vbInformation, ""
         
        cmbReaderindex.SetFocus
        Exit Sub
    End If
    DataQuery.RecordSource = "select borrowtime,bookname,returntime ,readername " _
    & " from borrowmessage,bookmessage,readermessage" _
    & " where bookmessage.bookindex = borrowmessage.bookindex " _
    & "and readermessage.readerindex = borrowmessage.readerindex " _
    & "and borrowmessage.readerindex =  " & cmbReaderindex & ""
    DataQuery.Refresh
    Set rsRQuery = DataQuery.Recordset '注意全局变量用运时的生命期
    If rsRQuery.RecordCount > 0 Then
       StatusBar1.Panels(1).Text = "当前状态:查询读者的借阅记录。"
       With rsRQuery
        .MoveLast
         TxtReaderName.Text = rsRQuery.Fields("readername")
            .MoveFirst
            
            If .RecordCount > 6 Then
             vsl.Max = .RecordCount - 6
            Else
              vsl.Max = 0
            End If
            
            TextClear
        For i = 0 To 17
             If i Mod 3 = 0 Then
                j = 0
             End If
             If rsRQuery.Fields(j) = #1/1/1111# Then
                 TxtBQ(i) = "未还"
             
             Else
                 TxtBQ(i) = rsRQuery.Fields(j)
             End If
        
             j = j + 1
         
             If j = 3 Then
                rsRQuery.MoveNext
                If .EOF Then
                Exit Sub
                End If
                
             End If
             
        Next
'        rsRQuery.FindFirst "readername = "
           
    
       End With
 
    Else
      
       StatusBar1.Panels(1).Text = "提示:该读者无借阅记录。"
'       MsgBox "无读者的借阅记录!", vbOKOnly + vbInformation, ""
       TextClear
       TxtReaderName.Text = ""
       
    End If
   
End Sub

Private Sub CmbReaderindex_Click()
    CmbReaderindex_Change
End Sub

Private Sub CmdExit_Click()
    Set rs = Nothing
    Set rsRQuery = Nothing
    DataQuery.DatabaseName = ""
    Unload Me
End Sub

Private Sub CmdNext_Click()
'    DataQuery.RecordSource = "select  borrowmessage.readerindex from borrowmessage "
'    DataQuery.Refresh
'    Set rsRQuery = DataQuery.Recordset
    Dim ct, pos As Integer
    If rs.RecordCount > 0 Then
    With rs
        .MoveNext
        If .EOF Then
            MsgBox "这已是最后一条记录", vbOKOnly + vbInformation, ""
            .MovePrevious
            Exit Sub
        End If
        ct = .RecordCount
        pos = .AbsolutePosition
        StatusBar1.Panels(2).Text = "当前记录位置:" & pos + 1 & "/" & ct
            
        cmbReaderindex = rs.Fields("readerindex")
       TxtReaderName.Text = rs.Fields("readername")
    End With
    End If
End Sub

Private Sub CmdPrevious_Click()

    Dim ct, pos As Integer
    If rs.RecordCount > 0 Then
    With rs
        .MovePrevious
        If .BOF Then
            MsgBox "这已是第一条记录", vbOKOnly + vbInformation, ""
            .MoveNext
            Exit Sub
        End If
        ct = .RecordCount
        pos = .AbsolutePosition
        StatusBar1.Panels(2).Text = "当前记录位置:" & pos + 1 & "/" & ct
        
        cmbReaderindex = rs.Fields("readerindex")
        TxtReaderName.Text = rs.Fields("readername")
    End With
    End If
End Sub

Private Sub vsl_Change()

    On Error Resume Next
    
    Dim i, j As Integer
    
    With rsRQuery
        .MoveFirst
    For i = 0 To vsl.Value - 1
        .MoveNext
    Next
    
    For i = 0 To 17
             If i Mod 3 = 0 Then
                j = 0
             End If
             
             TxtBQ(i) = rsRQuery.Fields(j)
             j = j + 1
             
             If j = 3 Then
                rsRQuery.MoveNext
                If .EOF Then
                Exit Sub
                End If
                
             End If
             
        Next
    End With

   
End Sub

Private Sub Form_Activate()
On Error GoTo err:
    Dim i, j As Integer
    Dim ct As Integer
    Dim pos As Integer
    Me.Left = (Screen.Width - Me.ScaleWidth) * 1 / 2
    Me.Top = (Screen.Height - Me.ScaleHeight) * 1 / 2
    Datamessage.DatabaseName = DataPath
    Datamessage.RecordSource = "select distinct readermessage.readerindex ,readername from readermessage left join borrowmessage on readermessage.readerindex = borrowmessage.readerindex "
    Datamessage.Refresh
    Set rs = Datamessage.Recordset
    
     With rs
        
            .MoveLast
            j = .RecordCount 'fffffffff
            .MoveFirst
            For i = 1 To j
                
                cmbReaderindex.AddItem .Fields("readerindex")
                .MoveNext
                
            Next
            .MoveFirst 'hhhhhhhh
            ct = .RecordCount
            pos = .AbsolutePosition
            StatusBar1.Panels(2).Text = "当前记录位置:" & pos + 1 & "/" & ct
            
            cmbReaderindex = rs.Fields("readerindex")
            TxtReaderName.Text = rs.Fields("readername")
    End With
        

Exit Sub

err:
    MsgBox "无读者的借阅记录!", vbOKOnly + vbInformation, ""
    Unload Me
End Sub

Private Sub Form_Load()

    Dim i As Integer
    Dim PosLeft As Integer
    Dim PosTop As Integer
      
    Me.Left = (Screen.Width - Me.ScaleWidth) * 1 / 2 '调整窗体到屏幕中间
    Me.Top = (Screen.Height - Me.ScaleHeight) * 1 / 2
    
    PosLeft = TxtBQ(0).Left
    PosTop = TxtBQ(0).Top
    For i = 1 To 17
        Load TxtBQ(i) 'jjjj
        If (i - 1) Mod 3 = 0 Then
            TxtBQ(i).Width = TxtBQ(0).Width * 2
            
        End If
        If i Mod 3 = 0 Then
            PosTop = PosTop + TxtBQ(0).Height
            TxtBQ(i).Left = TxtBQ(0).Left
            TxtBQ(i).Top = PosTop
            TxtBQ(i).Visible = True
        Else
            
            TxtBQ(i).Left = TxtBQ(i - 1).Left + TxtBQ(i - 1).Width
            TxtBQ(i).Top = TxtBQ(i - 1).Top
            
            TxtBQ(i).Visible = True
        End If
    Next
    vsl.Top = TxtBQ(0).Top
    vsl.Left = TxtBQ(0).Left + 4 * TxtBQ(0).Width
    vsl.Height = 6 * TxtBQ(0).Height
    InitializeDataPath
    DataQuery.DatabaseName = DataPath
    
    
End Sub
Private Sub TextClear()
  Dim i As Integer
  For i = 0 To 17
    TxtBQ(i) = ""
    
  Next
End Sub

⌨️ 快捷键说明

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