这个MSHFLEXGRID可不可以象HTML的表单一样进行多选?
因为我需要在它的数据中人工选出一部分数据进行特殊处理,可研究了半天好象没这功能.
datagrid好象可以(记得是可以,有点忘了),绑定数据后只要数据库中有字段为"是否"形式的它就自动显示为多选的方框.
可这个东东的功能太差,不自由.但这个MSHFLEXGRID好象又实现不了这个多选的功能.
或者大家有没有其它方式来实现我的要求,就是在它显示的数据中,手动选中部分数据,然后点一按钮进行被选中数据的操作,比如批量删除.
因为我需要在它的数据中人工选出一部分数据进行特殊处理,可研究了半天好象没这功能.
datagrid好象可以(记得是可以,有点忘了),绑定数据后只要数据库中有字段为"是否"形式的它就自动显示为多选的方框.
可这个东东的功能太差,不自由.但这个MSHFLEXGRID好象又实现不了这个多选的功能.
或者大家有没有其它方式来实现我的要求,就是在它显示的数据中,手动选中部分数据,然后点一按钮进行被选中数据的操作,比如批量删除.
建议用 ListView,风格:
· View = lvwReport
· MultiSelect = True
Private Sub flexgrid_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
'单击选择或不选择
With Flexgrid
If .rows < 2 Then Exit Sub
If .TextMatrix(.Row, 0) = "√" Then
.TextMatrix(Flexgrid.Row, 0) = ""
'改变行颜色
For i_Col = 0 To .Cols - 1
.col = i_Col
.CellBackColor = vbWhite
Next i_Col
Else
.TextMatrix(.Row, 0) = "√"
'改变行颜色
For i_Col = 0 To .Cols - 1
.col = i_Col
.CellBackColor = &HFFFFC0
Next i_Col
End If
End With
End Sub'将选中的行删除
private sub command1_click()
with flexgrid
for i=1 to .rows-1
if trim(.textmatrix(i,0))="√" then
'删除语句
conn.execute "delete from tablename where 字段="& .textmatrix(i,0) &""
end if
next i
end with
end sub