你还不如换个控件,比如:Microsoft Hierarchical FlexGrid Control 6.0 控件。
实现不了,建议改Microsoft Hierarchical FlexGrid Control 6.0 控件。CTRL+T里面找
用vsflexgrid8比较好,for 循环一遍不就行了
换MSFlexGrid、MSHFlexGrid或vsflexgrid 控件都行
Microsoft Hierarchical FlexGrid Control 6.0 能和datagrid一样把数据改动自动更新到sql server么?
我VB知道不多,才从Foxpro转来设我表单上加了MSHFlexGrid1,我下面代码中红行应该改成什么才能把Select到的所有行显示在MSHFlexGrid1中?我想可能是个循环,可我不会写,请别见笑,帮写下 Dim strID As String Dim strFirstName As String Dim strLastName As String Dim booRecordAdded As Boolean ' 打开连接。 Set cnn1 = New ADODB.Connection cnn1.Open strCnn
' 打开雇员表。 Set rstEmployees = New ADODB.Recordset rstEmployees.CursorType = adOpenKeyset rstEmployees.LockType = adLockOptimistic rstEmployees.Open "Select * From Topic Order By 发表时间 asc", cnn1, 1, 3, adCmdText Set DataGrid1.DataSource = rstEmployees
Set MSHFlexGrid1.DataSource = rstEmployees
这个需要用双重循环一一判断 给你个参考代码,仅仅是参考 Private Sub Command1_Click() MSFlexGrid1.BackColorBkg = vbGreen End Sub Private Sub Form_Load() MSFlexGrid1.Cols = 10 MSFlexGrid1.Rows = 10 MSFlexGrid1.FixedCols = 0 MSFlexGrid1.FixedRows = 0 MSFlexGrid1.SelectionMode = flexSelectionByRow End SubPrivate Sub MSFlexGrid1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single) 'On Error GoTo Err_Proc Dim intCurrCol As Long intCurrCol = MSFlexGrid1.Col '单击选择或不选择 If MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 0) = "√" Then MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 0) = "" '改变行颜色 For i_Col = 0 To MSFlexGrid1.Cols - 1 MSFlexGrid1.Col = i_Col MSFlexGrid1.CellBackColor = vbWhite Next i_Col Else MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 0) = "√" '改变行颜色 For i_Col = 0 To MSFlexGrid1.Cols - 1 MSFlexGrid1.Col = i_Col MSFlexGrid1.CellBackColor = &H80C0FF Next i_Col
End If MSFlexGrid1.Col = intCurrCol Exit Sub End Sub
能和datagrid一样把数据改动自动更新到sql server么?
Dim strFirstName As String
Dim strLastName As String
Dim booRecordAdded As Boolean ' 打开连接。
Set cnn1 = New ADODB.Connection
cnn1.Open strCnn
' 打开雇员表。
Set rstEmployees = New ADODB.Recordset
rstEmployees.CursorType = adOpenKeyset
rstEmployees.LockType = adLockOptimistic
rstEmployees.Open "Select * From Topic Order By 发表时间 asc", cnn1, 1, 3, adCmdText
Set DataGrid1.DataSource = rstEmployees
给你个参考代码,仅仅是参考
Private Sub Command1_Click()
MSFlexGrid1.BackColorBkg = vbGreen
End Sub
Private Sub Form_Load()
MSFlexGrid1.Cols = 10
MSFlexGrid1.Rows = 10
MSFlexGrid1.FixedCols = 0
MSFlexGrid1.FixedRows = 0
MSFlexGrid1.SelectionMode = flexSelectionByRow
End SubPrivate Sub MSFlexGrid1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
'On Error GoTo Err_Proc
Dim intCurrCol As Long
intCurrCol = MSFlexGrid1.Col
'单击选择或不选择
If MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 0) = "√" Then
MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 0) = ""
'改变行颜色
For i_Col = 0 To MSFlexGrid1.Cols - 1
MSFlexGrid1.Col = i_Col
MSFlexGrid1.CellBackColor = vbWhite
Next i_Col
Else
MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 0) = "√"
'改变行颜色
For i_Col = 0 To MSFlexGrid1.Cols - 1
MSFlexGrid1.Col = i_Col
MSFlexGrid1.CellBackColor = &H80C0FF
Next i_Col
End If
MSFlexGrid1.Col = intCurrCol
Exit Sub
End Sub