以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]表里面如何做成点击最后一行添加数据这样子? (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=169078) |
-- 作者:zto001 -- 发布时间:2021/6/1 20:51:00 -- [求助]表里面如何做成点击最后一行添加数据这样子? ![]() [求助]表里面如何做成这样子? 最后一行点击可以添加数据,填入数据保存该行,里面的数据为空时不能点击下一个空白行?
|
-- 作者:有点蓝 -- 发布时间:2021/6/1 21:59:00 -- StartEdit事件 Select Case e.Col.Name Case "第一列" Dim r As Row = e.Table.Rows(e.Table.Rows.Count - 1) If r("_Identify") = e.Row("_Identify") Then e.Table.DataTable.addnew End If End Select BeforeSelChange事件 If e.OldRange.RowSel <> e.NewRange.RowSel OrElse e.OldRange.ColSel <> e.NewRange.ColSel \'如果选择的是不同的行 If e.OldRange.RowSel >= 0 AndAlso e.OldRange.Rowsel < e.Table.Rows.Count Then \'而且原来选择的是一个有效的数据行 Dim r As Row = e.Table.Rows(e.OldRange.Rowsel) \'获得原来选择的行 If r.IsNull("第一列") Then \'如果编号为空 msgbox("请输入第一列") e.Table.StartEditing e.Cancel = True End If End If End If |
-- 作者:zto001 -- 发布时间:2021/6/2 21:09:00 -- If r.IsNull("第一列") Then \'如果编号为空 msgbox("请输入第一列") e.Table.StartEditing e.Cancel = True End If 这个地方这样写的话,就会出现移不开当前行的情况,并且会存在两行空白行。 If r.IsNull("第一列") Then \'如果编号为空 msgbox("请输入第一列") e. Table.Current.Delete End If 我改成了这样,正好符合需要的。但是一直弹错,这个怎么弄? |
-- 作者:有点蓝 -- 发布时间:2021/6/3 9:00:00 -- 移不开当前行是正常的,Foxtable的增加表功能就是这样,必须录入第一列数据才能移开。1楼的要求不也是这样吗?“里面的数据为空时不能点击下一个空白行?” |