以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  逻辑列选中的行自动隐藏的编码  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=92426)

--  作者:feixianzhi
--  发布时间:2016/11/3 10:24:00
--  逻辑列选中的行自动隐藏的编码
有两个问题:

一是逻辑列选中的行,自动隐藏的编码怎么写?

二是如表中有一个“日期”列,我想新增一行时,焦点单元格直接定位到新增行的日期列,编码怎么写?

请各位老师帮忙,谢谢!

--  作者:有点蓝
--  发布时间:2016/11/3 10:34:00
--  
1、AfterEdit事件

Select Case e.Col.Name
    Case "第八列"
        If e.Row("第八列") = True Then e.Row.Remove
End Select

2、DataRowAdded事件

Dim t As Table = Tables(e.DataTable.Name)
t.Select(t.Position,t.Cols("日期").Index)

--  作者:feixianzhi
--  发布时间:2016/11/3 10:36:00
--  
非常感谢有点蓝老师,辛苦了。
--  作者:有点青
--  发布时间:2016/11/3 10:38:00
--  

1、Tables("表A").Filter = "第二列 = true"

 

2、DataRowAdded事件

 

dim t as table = tables("表A")
t.Select(t.RowSel, t.cols("第二列").Index)


--  作者:feixianzhi
--  发布时间:2016/11/3 10:39:00
--  
有点蓝老师,第二个问题,增加一行,如果定位到不是日期列,是一个文本或数字列,编码怎么写?
--  作者:feixianzhi
--  发布时间:2016/11/3 10:40:00
--  
问题已解决,谢谢有点蓝老师。
--  作者:feixianzhi
--  发布时间:2016/11/3 10:50:00
--  
隐藏的行怎样重新显示呀,怎么找不到了。
--  作者:有点蓝
--  发布时间:2016/11/3 10:54:00
--  
AfterEdit事件改改,不然保存不了

Select Case e.Col.Name
    Case "第八列"
        If e.Row("第八列") = True Then
            e.Row.Save
            e.Row.Remove
        End If
End Select

显示需要重新加载一下表
DataTables("表A").load
或者
http://www.foxtable.com/webhelp/scr/0115.htm