📄 frmmain.frm
字号:
Begin VB.Menu mnuGetData
Caption = "[&G]获得机器数据"
End
Begin VB.Menu mnuDelete
Caption = "[&D]删除数据"
End
End
Begin VB.Menu mnuHelp
Caption = "[&H]帮助"
Begin VB.Menu mnuAbout
Caption = "[&A]关于"
End
End
End
Attribute VB_Name = "frmMain"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Public bPassWordOk As Boolean
Private Sub Form_Load()
'初始化数据/库
Call InitMdb
'初始化列表
Call InitLst
' Load frmPrint
Load frmCom
End Sub
Private Sub Form_Resize()
If Me.WindowState = vbMinimized Then
Exit Sub
End If
labRecToHandle.Left = 1 * Screen.TwipsPerPixelX
labRecToHandle.Width = 518 * Screen.TwipsPerPixelX
lstViwCapture.Left = 1 * Screen.TwipsPerPixelX
lstViwCapture.Top = labRecToHandle.Top + labRecToHandle.Height - 1 * Screen.TwipsPerPixelX
lstViwCapture.Width = labRecToHandle.Width
lstViwCapture.Height = Me.ScaleHeight - stdBar.Height - lstViwCapture.Top - 2 * Screen.TwipsPerPixelY
Image1.Width = 498 * Screen.TwipsPerPixelX
Image1.Height = 288 * Screen.TwipsPerPixelY
Image1.Left = Me.ScaleWidth - Image1.Width - 2 * Screen.TwipsPerPixelX
Image1.Top = Me.ScaleHeight - stdBar.Height - Image1.Height - 2 * Screen.TwipsPerPixelY
labCapturePicture.Left = Image1.Left + 1 * Screen.TwipsPerPixelX
labCapturePicture.Top = Image1.Top - labCapturePicture.Height '- 1 * Screen.TwipsPerPixelY
labCapturePicture.Width = Image1.Width
Line1.X1 = lstViwCapture.Left + lstViwCapture.Width
Line1.X2 = Me.ScaleWidth
Line1.Y1 = labCapturePicture.Top - 8 * Screen.TwipsPerPixelY
Line1.Y2 = Line1.Y1
Line2.X1 = Line1.X1
Line2.X2 = Line1.X2
Line2.Y1 = Line1.Y1 + 2 * Screen.TwipsPerPixelY
Line2.Y2 = Line2.Y1
lstViwClients.Left = Image1.Left
lstViwClients.Top = lstViwCapture.Top
lstViwClients.Width = Image1.Width
lstViwClients.Height = lstViwCapture.Height - Image1.Height - 34 * Screen.TwipsPerPixelY
labClients.Left = Image1.Left + 1 * Screen.TwipsPerPixelX
labClients.Top = labRecToHandle.Top
labClients.Width = Image1.Width
End Sub
Private Sub lstViwCapture_ItemClick(ByVal Item As MSComctlLib.ListItem)
On Error Resume Next
Image1.Picture = LoadPicture(GetAppPath & "Jpg\" & Item.SubItems(4))
Set lstViwCapture.SelectedItem = Item
End Sub
Private Sub mnuAbout_Click()
frmAbout.Show vbModal
End Sub
Private Sub mnuClientSet_Click()
frmPassWord.Show vbModal
If frmMain.bPassWordOk = True Then
frmClientS.Show vbModal
Call GetClientSettings
Call frmCom.GetClientsSetting
End If
End Sub
Private Sub mnuDelete_Click()
frmPassWord.Show vbModal
If frmMain.bPassWordOk = True Then
frmDel.Show vbModal
If g_bDeleted = True Then
Call GetRecToHandle
Call RetBarState
End If
End If
End Sub
Private Sub mnuExit_Click()
Unload Me
End Sub
Private Sub mnuGetData_Click()
frmPassWord.Show vbModal
If frmMain.bPassWordOk = True Then
frmCom.Show
End If
End Sub
Private Sub mnuIntervalSet_Click()
frmInterval.Show vbModal
End Sub
Private Sub mnuQuery_Click()
frmfind.Show vbModal
End Sub
Private Sub mnuSetPassWord_Click()
frmPassWord.Show vbModal
If frmMain.bPassWordOk = True Then
frmPassWordSet.Show vbModal
End If
End Sub
Private Sub timDateTime_Timer()
stdBar.Panels(2).Text = Format(Date, "Long Date")
stdBar.Panels(3).Text = Format(Time, "Long Time")
End Sub
'初始化报警记录列表
Private Sub InitLst()
Dim itemX As ListItem, i As Integer
Dim rs As Recordset
lstViwCapture.View = lvwReport
lstViwCapture.ColumnHeaders.Add , , "No", 360
lstViwCapture.ColumnHeaders.Add , , " 记录来源", 2200
lstViwCapture.ColumnHeaders.Add , , "行驶方向", 1050
lstViwCapture.ColumnHeaders.Add , , "拍照时间", 2530
lstViwCapture.ColumnHeaders.Add , , "图片名称", 0
For i = 3 To lstViwCapture.ColumnHeaders.Count
lstViwCapture.ColumnHeaders(i).Alignment = lvwColumnCenter
Next i
'加载待处记录
Call GetRecToHandle
lstViwClients.View = lvwReport
lstViwClients.ColumnHeaders.Add , , "状态", 650
lstViwClients.ColumnHeaders.Add , , " 机器名称", 2550
lstViwClients.ColumnHeaders.Add , , "网 络", 900
lstViwClients.ColumnHeaders.Add , , "视频A", 900
lstViwClients.ColumnHeaders.Add , , "视频B", 900
For i = 3 To lstViwCapture.ColumnHeaders.Count
lstViwClients.ColumnHeaders(i).Alignment = lvwColumnCenter
Next i
'加载监视
Call GetClientSettings
End Sub
'从列表中删除当前列表项
Private Sub RemoveItem()
Dim itemIndex As Integer
itemIndex = lstViwCapture.SelectedItem.Index
lstViwCapture.ListItems.Remove itemIndex
If itemIndex > lstViwCapture.ListItems.Count Then
itemIndex = lstViwCapture.ListItems.Count
End If
If itemIndex > 0 Then
Call lstViwCapture_ItemClick(lstViwCapture.ListItems(itemIndex))
End If
Call RetBarState
End Sub
'初始化数据库
'打开数据库
Private Sub InitMdb()
Dim rs As Recordset
Set g_myDB = OpenDatabase(GetAppPath & "CaptureServer.mdb", False, False, ";PWD=111111")
Set rs = g_myDB.OpenRecordset("Select max(fldID) as maxID from tabCaptureRec", dbOpenSnapshot)
If IsNull(rs!maxID) = False Then
g_nNewRecID = rs!maxID
Else
g_nNewRecID = 0
End If
rs.Close
Set rs = g_myDB.OpenRecordset("Select max(fldPrintID) as maxPrintID from tabCaptureRec", dbOpenSnapshot)
If IsNull(rs!maxPrintID) = False And rs!maxPrintID > 0 Then
g_nNewPrintID = rs!maxPrintID
End If
rs.Close
End Sub
'关闭数据库
Private Sub CloseMdb()
g_myDB.Close
End Sub
'获取待处记录
Private Sub GetRecToHandle()
Dim itemX As ListItem
Dim sSql As String, rs As Recordset
lstViwCapture.ListItems.Clear
sSql = "Select * from tabCaptureRec where fldPrinted = False"
Set rs = g_myDB.OpenRecordset(sSql, dbOpenSnapshot)
Do While Not rs.EOF
Set itemX = lstViwCapture.ListItems.Add(, , Format(lstViwCapture.ListItems.Count + 1))
itemX.SubItems(1) = rs!fldPostName
itemX.SubItems(2) = rs!fldDirection
itemX.SubItems(3) = Format(rs!fldCapDate, "Long Date") & Format(rs!fldCapTime, "Long Time")
itemX.SubItems(4) = rs!fldJpgFile
itemX.Tag = rs!fldID
itemX.EnsureVisible
Call lstViwCapture_ItemClick(itemX)
rs.MoveNext
Loop
rs.Close
End Sub
'客户状态监视
Private Sub GetClientSettings()
Dim rs As Recordset
Dim itemX As ListItem
lstViwClients.ListItems.Clear
Set rs = g_myDB.OpenRecordset("Select * from tabPostSettings where fldWork = True", dbOpenSnapshot)
Do While Not rs.EOF
Set itemX = lstViwClients.ListItems.Add(, , "", 1, 1)
itemX.SubItems(1) = rs!fldPostName
itemX.SubItems(2) = "正常"
itemX.SubItems(3) = "正常"
itemX.SubItems(4) = "正常"
rs.MoveNext
Loop
rs.Close
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -