我有一个带3列的Flexgrid(VSFlexGrid 8)
网格名称= Main_Window.form_seg_carrier_grid
Select | Name | ID
x | abc | 1
| cdf | 2
x | dfs | 3
select列被定义为布尔数据类型,由用户自行选择哪些行为true / false。
我需要的是一种获取所有行的方法,并将ID设置为数组。
目前我唯一能得到的就是告诉我选择了哪一行,或者它是否为真/假,假为0为0,真为-1。
可以通过单击按钮或更改来构建阵列。
编辑1
这是我能得到的,这将触发msgbox(快速测试变量的方式)以显示何时设置为true
Private Sub form_seg_carrier_grid_Click()
Dim test As String
test = Main_Window.form_seg_carrier_grid.Value
If test = -1 Then
MsgBox test
End If
End Sub
编辑2
我觉得我很接近这样的事情,只是不能让它做我想做的事情。
Dim i As Integer
Dim test As String
For i = 0 To Main_Window.form_seg_carrier_grid.Rows - 1
If Main_Window.form_seg_carrier_grid.IsSelected(i) Then
If test <> vbNullString Then test = test & ", "
test = test & "'"
test = test & Main_Window.form_seg_carrier_grid.ValueMatrix(i, 1)
test = test & "'"
End If
Next i
答案 0 :(得分:0)
我能够通过添加布尔列
来实现这一目标0为假,-1为真
然后我使用此代码构建一个数组,我可以使用IN语句
填充SQL查询(i,3)指定我希望该值来自哪个列
'1','3'
输出将是(引用原始帖子)
executable