以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  关于table checed 的问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=121902)

--  作者:ap9709130
--  发布时间:2018/7/15 14:46:00
--  关于table checed 的问题
老师

今天我发现一个很奇怪的现象,我窗口中的一个 按键 代码如下:
If Tables(e.form.name & "_tddmxb").Rows.Count > 0 Then
    For i As Integer = 0 To Tables(e.form.name & "_tddmxb").Rows.Count - 1
        Tables(e.form.name & "_tddmxb").Rows(i).Checked = True
    Next
    
Else
    MessageBox.show("表没有数据!")
End If

但是每次都会有一行 是不可以check 的, 不管怎么换数据 ,都是会有一行这样,如果这行手动 勾一次,然后再运行代码,就会没问题,但是如果重新下载数据,运行代码,还是会有一行 选不中,这一行是随机的,每次都是一行.不知道是不是bug ?

--  作者:ap9709130
--  发布时间:2018/7/15 15:04:00
--  
我的tables 第一列 有做合并处理.
--  作者:有点甜
--  发布时间:2018/7/15 15:23:00
--  

你对表格进行排序了?

 

If Tables(e.form.name & "_tddmxb").Rows.Count > 0 Then
    For i As Integer = 0 To Tables(e.form.name & "_tddmxb").Rows.Count - 1
        Tables(e.form.name & "_tddmxb").position = i
        Tables(e.form.name & "_tddmxb").Rows(i).Checked = True
    Next    
Else
    MessageBox.show("表没有数据!")
End If

--  作者:ap9709130
--  发布时间:2018/7/15 19:04:00
--  
是的,排序了.
老师您的方法可以了,没问题.为什么会这样?

--  作者:有点甜
--  发布时间:2018/7/15 20:10:00
--  
这个是bug,对应已经排序的表格,获取index或者checked有可能混乱。
--  作者:ap9709130
--  发布时间:2018/7/16 18:29:00
--  
多谢老师