Foxtable(狐表)用户栏目专家坐堂 → [求助]本行未保存前 不允许离开此行?【已解决】


  共有8995人关注过本帖树形打印复制链接

主题:[求助]本行未保存前 不允许离开此行?【已解决】

帅哥哟,离线,有人找我吗?
gsnake
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:682 积分:5263 威望:0 精华:0 注册:2012/6/6 14:37:00
[求助]本行未保存前 不允许离开此行?【已解决】  发帖心情 Post By:2013/3/7 22:27:00 [只看该作者]

我不是说的传统的编辑方式,而是FOXTABLE的表格模式中!!  我编辑一行后,不保存或撤销的话就不能将光标移开这一行!

在表事件 中用哪个事件,代码怎么写啊!!

像 会员管理系统的例子!!会员表限制了“会员姓名” “性别”不能为空  但我移一下行,只要移到姓名和性别不为空的行照样保存 !限制就没有意义了!!
图片点击可在新窗口打开查看此主题相关图片如下:未命名.bmp
图片点击可在新窗口打开查看
[此贴子已经被作者于2013-5-16 11:36:15编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
y2287958
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:4773 积分:34673 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2013/3/8 6:28:00 [只看该作者]

示例二

如果没有输入编号列内容,则禁止选择其它行
 

If e.OldRange.RowSel <> e.NewRange.RowSel '如果选择的是不同的行
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 '如果编号为空
e.Cancel = True
End If
End If
End
If


 回到顶部
帅哥哟,离线,有人找我吗?
unverse
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1088 积分:8247 威望:0 精华:4 注册:2012/3/31 18:08:00
  发帖心情 Post By:2013/3/8 9:52:00 [只看该作者]

beforeselrangechange事件中。添加 。以上代码就可以了,具体列再自己添加就可以了。


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/3/8 10:04:00 [只看该作者]

也可以看看这个:

http://www.foxtable.com/help/topics/2263.htm

 


 回到顶部
帅哥哟,离线,有人找我吗?
gsnake
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:682 积分:5263 威望:0 精华:0 注册:2012/6/6 14:37:00
  发帖心情 Post By:2013/3/8 11:19:00 [只看该作者]

谢谢各位大师!解决了!放上代码,以便大家研究!
If e.OldRange.RowSel <> e.NewRange.RowSel '如果选择的是不同的行
    If e.OldRange.RowSel >= 0 AndAlso e.OldRange.Rowsel < e.Table.Rows.Count Then '而且原来选择的是一个有效的数据行
        Dim r As Row = e.Table.Rows(e.OldRange.Rowsel) '获得原来选择的行
        Dim nms() As String={"会员姓名","手机号码","性别"}
        For Each nm As String In nms
            If r.Isnull(nm) Then  
                e.cancel=True        '为空就取消操作
                messagebox.show(nm & "必须输入内容")
                Return
            Else
                r.Save()      ’满足条件,保存
            End If
        Next
        
    End If
End If

 回到顶部