应用心得
1)MSHFlexGrid控件 与 MSFlexGrid控件 的异同
MSHFlexGrid控件与Adodc控件绑定,MSFlexGrid控件与Data控件绑定。
2)MSHFlexGrid控件的应用
如果记录集已经在程序中产生,则可以不与Adodc控件绑定,直接在MSHFlexGrid控件中显示数据,并且可以根据需要设置控件中行的颜色,如下例:
Public Function DataGrid_Update() As Boolean On Error GoTo DataGrid_Update_Err Dim orarsRecordset As Object Dim adorsRecordset As New ADODB.Recordset Dim lngDateDiff As Long Call gGetData(CONST_GENERALTABLE_TIMEOUT_INFO, orarsRecordset) If Not ADO_DataBaseOpen(dskAttr, 1) Then DataGrid_Update = False Exit Function End If
adorsRecordset.CursorLocation = adUseClient Call adorsRecordset.Open(CONST_VEHICLETABLE_RECORDSET_QUERIED, _ mobjDataSource.ConnectionString, , , adCmdText) frmShowNewData.grdSaiShin.ColWidth(0) = 800 frmShowNewData.grdSaiShin.ColWidth(1) = 2000 frmShowNewData.grdSaiShin.AllowUserResizing = flexResizeColumns Set frmShowNewData.grdSaiShin.DataSource = adorsRecordset Dim i As Integer i = 0 i = i + 1 While Not adorsRecordset.EOF lngDateDiff = DateDiff("n", adorsRecordset.Fields("測位日時"), Now) If lngDateDiff > orarsRecordset.Fields("GEN_V_NUM").Value Then frmShowNewData.grdSaiShin.Row = i Dim j As Integer For j = 0 To frmShowNewData.grdSaiShin.Cols - 1 frmShowNewData.grdSaiShin.Col = j frmShowNewData.grdSaiShin.CellBackColor = &H80FFFF Next End If i = i + 1 adorsRecordset.MoveNext Wend Call ADO_DataBaseClose DataGrid_Update = True Exit Function DataGrid_Update_Err: Call ADO_DataBaseClose DataGrid_Update = False End Function 
|