?? frmchaxun.frm
字號:
LCID = 2052
SubFormatType = 0
EndProperty
EndProperty
SplitCount = 1
BeginProperty Split0
BeginProperty Column00
ColumnWidth = 450.142
EndProperty
BeginProperty Column01
ColumnWidth = 1230.236
EndProperty
BeginProperty Column02
ColumnWidth = 1305.071
EndProperty
BeginProperty Column03
ColumnWidth = 1574.929
EndProperty
BeginProperty Column04
ColumnWidth = 464.882
EndProperty
BeginProperty Column05
ColumnWidth = 705.26
EndProperty
BeginProperty Column06
ColumnWidth = 720
EndProperty
BeginProperty Column07
ColumnWidth = 734.74
EndProperty
BeginProperty Column08
ColumnWidth = 689.953
EndProperty
BeginProperty Column09
ColumnWidth = 705.26
EndProperty
BeginProperty Column10
ColumnWidth = 734.74
EndProperty
BeginProperty Column11
ColumnWidth = 750.047
EndProperty
EndProperty
End
Begin MSAdodcLib.Adodc Adodc1
Height = 375
Left = 10560
Top = 2400
Visible = 0 'False
Width = 1200
_ExtentX = 2117
_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 = "Adodc1"
BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "MS Sans Serif"
Size = 8.25
Charset = 0
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
_Version = 393216
End
Begin VB.Frame Frame1
Caption = "查詢條件"
Height = 735
Left = 0
TabIndex = 10
Top = 0
Width = 11775
Begin VB.CheckBox Check1
Caption = "按編號查詢:"
Height = 255
Left = 240
TabIndex = 12
Top = 240
Width = 1455
End
Begin VB.ComboBox Combo1
Enabled = 0 'False
Height = 300
Left = 1800
TabIndex = 11
Top = 240
Width = 1215
End
End
End
Attribute VB_Name = "Frmchaxun"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Dim strsql As String
Private NumPoints As Integer
Dim rs As New ADODB.Recordset
Dim dbcn As New ADODB.Connection
Private Sub Check1_Click()
Combo1.Clear '清空下拉列表中的內容
CommandQuery.Enabled = True '激活開始查詢按鈕
strsql = "SELECT id,sum(v) FROM data GROUP BY id;"
'按照不同的編號進行分組,取得所有的編號
excutesql (strsql) '調用函數,執行SQL語句
While Not rs.EOF
If rs!id <> "" Then
Combo1.AddItem (rs!id) '將編號的數據插入到下拉列表里,供用戶選擇
End If
rs.MoveNext
Wend
rs.Close
dbcn.Close
End Sub
Private Sub CommadnAll_Click()
Adodc1.CommandType = adCmdText
Adodc1.RecordSource = "SELECT * FROM data"
'設置ADODC控件的RecordSource屬性為取所有的數據
Adodc1.Refresh
End Sub
Private Sub CommandChA_Click()
If Combo1.Text <> "" Then '調用MakeChart函數,繪制圖表
makechart ("a1")
End If
End Sub
Private Sub CommandChB_Click()
If Combo1.Text <> "" Then
makechart ("a2")
End If
End Sub
Private Sub CommandChC_Click()
If Combo1.Text <> "" Then
makechart ("a3")
End If
End Sub
Private Sub CommandChV_Click()
If Combo1.Text <> "" Then
makechart ("v")
End If
End Sub
Private Sub CommandDel_Click()
Dim varBmk As Variant
For Each varBmk In DataGrid1.SelBookmarks 'varBmk保存的是用戶要刪除的行
Adodc1.Recordset.Bookmark = varBmk '把該行作上標記
Adodc1.Recordset.Delete '刪除該行
Adodc1.Refresh '更新顯示
Set DataGrid1.DataSource = Adodc1 '將DataGrid控件于ADODC綁定,以更新DataGrid的顯示
Next
Unload Me
Me.Show
End Sub
Private Sub CommandExit_Click()
Unload Me
End Sub
Private Sub CommandQuery_Click()
Adodc1.CommandType = adCmdText
If Check1.Value = 1 And Combo1.Text = "" Then '判斷是否選擇查詢條件
MsgBox "對不起!請輸入您的查詢條件!", vbOKOnly, "錯誤"
Else
Adodc1.RecordSource = "SELECT * FROM data where id='" & Combo1.Text & "'"
'執行查詢語句
End If
Adodc1.Refresh '刷新ADODC,即更新了DataGrid的顯示
Chart1.Refresh
End Sub
Private Sub Form_Load()
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\db\db1.mdb;Persist Security Info=False"
'指定ADODC控件的連接對象
Adodc1.CommandType = adCmdText
Adodc1.RecordSource = "SELECT * FROM data order by time DESC"
'按照時間降序的方式取得所有的數據
Adodc1.Refresh '更新顯示
End Sub
Public Function excutesql(strsql As String)
Dim filename As String
filename = App.Path + "\db\db1.mdb"
dbcn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & filename
dbcn.Open
rs.ActiveConnection = dbcn
rs.Source = strsql
rs.Open
End Function
Public Function makechart(m As String)
Dim Count As Integer
Dim ValueTemp() As Integer
Dim Value() As Variant
strsql = "select " & m & ",time from data where id = " & Combo1.Text & ""
'根據編碼進行查詢
excutesql (strsql)
NumPoints = 0 '存放數組的上限
While Not rs.EOF
ReDim Preserve ValueTemp(2, NumPoints + 1)
'循環語句,由于設置MSChart控件顯示的是二維的圖表,
'因此將查詢的結果,保存在一個二維數組中,同時由于動態
'設定數組的上限時,只能設定二維數組的第二維,因此,這里改變了
'數組的兩個維的維度大小,即兩行數據,列的大小動態確定
ValueTemp(0, NumPoints) = NumPoints + 1
'第一行的數據存放的是數字編號
Select Case m
Case "a1" '根據判斷,第二行存放的是電流或者電壓的數據
ValueTemp(1, NumPoints) = rs!a1
Case "a2"
ValueTemp(1, NumPoints) = rs!a2
Case "a3"
ValueTemp(1, NumPoints) = rs!a3
Case "v"
ValueTemp(1, NumPoints) = rs!v
End Select
NumPoints = NumPoints + 1
rs.MoveNext
Wend
ReDim values1(NumPoints - 1, 2)
For Count = 0 To NumPoints - 1 '保存完畢后,將數組的行列互換
Value(Count, 0) = ValueTemp(0, Count)
Value(Count, 1) = ValueTemp(1, Count)
Next
Chart1.chartType = VtChChartType2dXY '指定MSChart控件的樣式為二維圖表
Chart1.RowCount = NumPoints '指定MSChart控件的最大行數
Chart1.ColumnCount = 2 '指定MSChart控件的最大列數
Chart1.ChartData = values1 ''指定MSChart控件的數據
rs.Close
dbcn.Close
End Function
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -