以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 再提重复失效的问题,请教了! (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=26324) |
||||
-- 作者:独孤九箭 -- 发布时间:2012/11/30 9:57:00 -- 再提重复失效的问题,请教了! 在表中的列设置中设置禁止重复有一定的局限性,因此根据帮助,在表中事件的DataColChanging的事件中写下如下代码:
If e.DataCol.Name = "第一列" Then
功能已经实现,无论是控件,还是直接操作,都不会重复了。但有一个小问题,如果在控件中修改到重复值时,会报两次错。虽然不影响使用,但感觉还是有些奇怪,问有没有办法解决?
|
||||
-- 作者:独孤九箭 -- 发布时间:2012/11/30 10:01:00 -- 上面的附件没打包。再传个。
|
||||
-- 作者:独孤九箭 -- 发布时间:2012/11/30 10:17:00 -- 大哥,里面设计了一个窗口,你打开窗口看看啊。 |
||||
-- 作者:lin_hailun -- 发布时间:2012/11/30 10:39:00 -- 以下是引用独孤九箭在2012-11-30 10:17:00的发言:
大哥,里面设计了一个窗口,你打开窗口看看啊。 木有看到错误。 |
||||
-- 作者:独孤九箭 -- 发布时间:2012/11/30 10:47:00 -- 是这样的,当你在控件中改了有重复的值后,按下回车键或Tab键时(目前只测试了这两个键)会出现两次报错。
|
||||
-- 作者:lin_hailun -- 发布时间:2012/11/30 10:54:00 -- 反复测试,木有发现错误提示。 |
||||
-- 作者:独孤九箭 -- 发布时间:2012/11/30 11:03:00 -- 好吧,我把例子做得稍微完整一些。再次上传,没有添加任何代码,只是起动了窗口,并在窗口再添加了一个文本控件,用于输入第二列。
请在第一个框中输入一个重复的值,如当前是1111,后面有2222,3333,你可以输入一个2222,或3333,然后按回车,或者是Tab. 这时就会有两次报错。
我说过并不影响功能的实现。
|
||||
-- 作者:lin_hailun -- 发布时间:2012/11/30 12:18:00 -- 呃,这样说吧。你按下tab键,就相当于在表中按下了tab键,也就是焦点离开了这个表格,触发事件。然后你文本框的焦点离开了,也会触发这个事件。 |
||||
-- 作者:独孤九箭 -- 发布时间:2012/11/30 12:44:00 -- 是的,原因我也想到了,只是无法解决,没关系,不影响使用。以后再想其他办法,看看能否在控件用代码来替代表事件。谢谢啦。 |