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

📄 frmsearch.frm

📁 基于VC++串口编程。经过好长时间的寻找
💻 FRM
📖 第 1 页 / 共 2 页
字号:
      Appearance      =   1
      NumItems        =   0
   End
   Begin VB.Image Image1 
      BorderStyle     =   1  'Fixed Single
      Height          =   4452
      Left            =   6636
      Top             =   84
      Width           =   7368
   End
End
Attribute VB_Name = "frmSearch"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit

Private Sub cboTime_Click()
    If cboTime.Text = "" Then
        txtDate(0).Text = "____年__月__日"
        txtDate(0).Enabled = False
        labReach.Visible = False
        txtDate(1).Visible = False
    ElseIf cboTime.Text = "从" Then
        txtDate(0).Enabled = True
        labReach.Visible = True
        txtDate(1).Visible = True
    Else
        txtDate(0).Enabled = True
        labReach.Visible = False
        txtDate(1).Visible = False
    End If
End Sub

Private Sub cmdCancel_Click()
    Unload Me
End Sub

Private Sub cmdModi_Click()
    g_lCurRecID = lstViwCapture.SelectedItem.Tag
    frmModi.Show vbModal
End Sub

Private Sub cmdPrint_Click()
Dim Answer As Integer, itemX As ListItem
Dim i As Integer, bHaveEmpty As Boolean

    Set itemX = lstViwCapture.SelectedItem
        
    bHaveEmpty = False
    If itemX.Text = "" Then
        bHaveEmpty = True
    End If
    For i = 1 To 9
        If itemX.SubItems(i) = "" Then
            bHaveEmpty = True
            Exit For
        End If
    Next i
    
    If bHaveEmpty = True Then
        MsgBox "数据不完整,不能打印!" & vbCrLf & "请确定所有打印数据。"
        g_lCurRecID = itemX.Tag
        frmModi.Show vbModal
    Else
        If itemX.SubItems(8) <> "0" Then
            Answer = MsgBox("此记录已经打印过,重新打印吗?", vbQuestion + vbYesNo)
            If Answer = vbNo Then
                Exit Sub
            End If
        End If
        frmPrint.PrintNotes FormatPrintNo(Val(itemX.SubItems(8))), _
                            itemX.SubItems(1), _
                            itemX.SubItems(2), _
                            itemX.Text, _
                            itemX.SubItems(4), _
                            itemX.SubItems(6), _
                            itemX.SubItems(9), _
                            Format(Date, "Long Date"), _
                            itemX.SubItems(7), _
                            itemX.SubItems(3)
    End If
End Sub

Private Sub cmdSearch_Click()
Dim sSql As String

    txtCarNumber.Text = Trim(txtCarNumber.Text)
    txtCarMan.Text = Trim(txtCarMan.Text)
    
    '查找所有记录
    sSql = "Select * from tabCaptureRec where fldID > 0"
    
    If txtCarNumber.Text <> "" Then
        sSql = sSql & " and fldCarNumber = '" & txtCarNumber.Text & "'"
    End If
    If txtCarMan.Text <> "" Then
        sSql = sSql & " and (fldCarMan = '" & txtCarMan.Text & "' or fldMotorMan = '" & txtCarMan.Text & "')"
    End If
    If cboPostName.ListIndex <> 0 Then
        sSql = sSql & " and fldPostName = '" & Format(cboPostName.Text) & "'"
    End If
    
    If txtDate(0).Text <> "____年__月__日" Then
        If IsDate(txtDate(0).Text) = False Then
            MsgBox "日期输入错误,请输入正确日期或空日期", , "输入错误"
            txtDate(0).SetFocus
            Exit Sub
        End If
    End If
    
    If cboTime.Text = "从" And txtDate(0).Text <> "____年__月__日" Then
        If IsDate(txtDate(1).Text) = False Then
            MsgBox "日期输入错误,请输入正确日期或空日期", , "输入错误"
            txtDate(1).SetFocus
            Exit Sub
        Else
            sSql = sSql & " and fldCapDate >= #" & CDate(txtDate(0).Text) & "# and fldCapDate <= #" & CDate(txtDate(1).Text) & "#"
        End If
    ElseIf txtDate(0).Text <> "____年__月__日" Then
        sSql = sSql & " and fldCapDate " & cboTime.Text & " #" & CDate(txtDate(0).Text) & "#"
    End If
    
Dim rs As Recordset, itemX As ListItem

    lstViwCapture.ListItems.Clear
    Set rs = g_myDB.OpenRecordset(sSql, dbOpenSnapshot)
    Do While Not rs.EOF
        Set itemX = lstViwCapture.ListItems.Add(, , Format(rs!fldCarNumber))
        itemX.SubItems(1) = Format(rs!fldCarMan)
        itemX.SubItems(2) = Format(rs!fldMotorMan)
        itemX.SubItems(3) = Format(rs!fldCarStyle)
        itemX.SubItems(4) = Format(rs!fldPostName)
        itemX.SubItems(5) = Format(rs!fldDirection)
        itemX.SubItems(6) = Format(rs!fldCapDate, "Long Date") & Format(rs!fldCapTime, "Long Time")
        itemX.SubItems(7) = Format(rs!fldJpgFile)
        itemX.SubItems(8) = Format(rs!fldPrintID)
        itemX.SubItems(9) = Format(rs!fldReson)
        itemX.Tag = rs!fldID
        
        rs.MoveNext
    Loop
    rs.Close
    
    stdBar.Panels(1).Text = "当前查询结果,总计: " & Format(lstViwCapture.ListItems.Count) & " 条记录"
    If lstViwCapture.ListItems.Count > 0 Then
        cmdModi.Enabled = True
        cmdPrint.Enabled = True
        Call lstViwCapture_ItemClick(lstViwCapture.ListItems(1))
    Else
        cmdModi.Enabled = False
        cmdPrint.Enabled = False
        Image1.Picture = LoadPicture("")
    End If
End Sub

Private Sub cmdReset_Click()
    txtCarNumber.Text = ""
    txtCarMan.Text = ""
    cboPostName.ListIndex = 0
    cboTime.ListIndex = 0
    lstViwCapture.ListItems.Clear
    stdBar.Panels(1).Text = "当前查询结果,总计: " & Format(lstViwCapture.ListItems.Count) & " 条记录"
End Sub

Private Sub Form_Load()
    Call InitCbo
    Call InitLst
End Sub

Private Sub Form_Resize()
    
    famSearch.Left = 2 * Screen.TwipsPerPixelX
    
    Image1.Width = 498 * Screen.TwipsPerPixelX
    Image1.Height = 288 * Screen.TwipsPerPixelY
    Image1.Left = Me.ScaleWidth - Image1.Width - 2 * Screen.TwipsPerPixelX
    Image1.Top = 3 * Screen.TwipsPerPixelY 'Picture1.Top + Picture1.Height + 60 * Screen.TwipsPerPixelY
    
    lstViwCapture.Left = famSearch.Left
    lstViwCapture.Top = Image1.Top + Image1.Height + 6 * Screen.TwipsPerPixelY
    lstViwCapture.Width = Me.ScaleWidth - 2 * lstViwCapture.Left
    lstViwCapture.Height = Me.ScaleHeight - lstViwCapture.Top - stdBar.Height - 1 * Screen.TwipsPerPixelY
    
End Sub

Private Sub lstViwCapture_ItemClick(ByVal Item As MSComctlLib.ListItem)
    On Error Resume Next
    Image1.Picture = LoadPicture(GetAppPath & "Jpg\" & Item.SubItems(7))
    Set lstViwCapture.SelectedItem = Item
End Sub

'初始化可选违章地点
Private Sub InitCbo()
Dim rs As Recordset
    
    cboPostName.AddItem "所有地点"
    
    Set rs = g_myDB.OpenRecordset("tabPostSettings", dbOpenSnapshot)
    Do While Not rs.EOF
        cboPostName.AddItem rs!fldPostName
        rs.MoveNext
    Loop
    rs.Close
        
    cboPostName.ListIndex = 0
    cboTime.ListIndex = 0
End Sub

'查询结果列表
Private Sub InitLst()

    lstViwCapture.View = lvwReport
    lstViwCapture.ColumnHeaders.Add , , "车牌号码", 1050
    lstViwCapture.ColumnHeaders.Add , , "      车    主", 2200
    lstViwCapture.ColumnHeaders.Add , , "姓    名", 1100
    lstViwCapture.ColumnHeaders.Add , , "车    型", 1100
    lstViwCapture.ColumnHeaders.Add , , "违章地点", 3000
    lstViwCapture.ColumnHeaders.Add , , "行驶方向", 1500
    lstViwCapture.ColumnHeaders.Add , , "违章时间", 2200
    lstViwCapture.ColumnHeaders.Add , , "图片名称", 0
    lstViwCapture.ColumnHeaders.Add , , "打印编号", 0
    lstViwCapture.ColumnHeaders.Add , , "违章原因", 0
End Sub

⌨️ 快捷键说明

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