Foxtable(狐表)用户栏目专家坐堂 → 莫名其妙的错误,请帮忙看看问题在哪里?


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

主题:莫名其妙的错误,请帮忙看看问题在哪里?

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


加好友 发短信 一级勋章
等级:版主 帖子:1993 积分:19397 威望:0 精华:20 注册:2008/9/2 10:09:00
莫名其妙的错误,请帮忙看看问题在哪里?  发帖心情 Post By:2009/7/31 12:40:00 [只看该作者]

这是例子,代码非常简单。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.table


窗口1的按钮事件如下:
With DataTables("表A")   ’从数据库中重载表
   .LoadFilter = ""
   .Load()
End With
With Tables("表A")      ’清空过滤条件、设置排序并增加一行
   .Filter = ""
   .Sort = "_Identify"
   .AddNew()
End With

数据表CurrentChanged的事件设置如下:
MessageBox.Show(e.table.Current("第一列"))

两个事件分别单独执行都没问题,但如果两个事件都触发,就出错了。搞了一上午都没找出原因,头都大了。请高手帮忙看看,多谢!


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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2009/7/31 12:57:00 [只看该作者]

if tables"表A").count > 1 then 
    MessageBox.Show(e.table.Current("第一列"))
end if


但会出现两次MessageBox.Show的提示窗口 ~? 且第一次提示的第一行第一列的内容,第二次提示的就是增加的行第一列的内容(空值),如果按钮中给增加的行第一列赋值后,还会再显示赋值后的内容。
还有一个怪现象:就是,任何单元格输入的第一个字符或空格键后就好跳出了提示(显示原该行第一列的内容),输入完回车后又提示输入后的内容。。。。。

按钮代码中,不增加行也没问题~ ! 但按钮对任何行的第一列赋值,都会在第一行第一列中显示???
[此贴子已经被作者于2009-7-31 13:38:54编辑过]

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


加好友 发短信 一级勋章
等级:版主 帖子:1993 积分:19397 威望:0 精华:20 注册:2008/9/2 10:09:00
  发帖心情 Post By:2009/7/31 13:38:00 [只看该作者]

是的,非常奇怪。估计就是因为新增行的问题。按说,用table里的新增行,光标会自动定位到这个新增行上,弹出的显示内容也应该是这个新增行的。为什么就出错呢?
莫不是foxtable本身的bug吧?


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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2009/7/31 13:51:00 [只看该作者]

还有啊~
1、按钮中只用第一段代码 with  ....  end with  :  这时表中的无论当前是选择那个单元格都会跑到第一行去。但这是currentchanged事件代码不会提示!
2、按钮中只用第二段代码 with  ....  end with  :增不增加行都不会有上面现象~
[此贴子已经被作者于2009-7-31 13:52:39编辑过]

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


加好友 发短信 一级勋章
等级:版主 帖子:1993 积分:19397 威望:0 精华:20 注册:2008/9/2 10:09:00
  发帖心情 Post By:2009/7/31 14:16:00 [只看该作者]

期待老六答疑解惑!
困扰我大半天了,郁闷。

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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/7/31 14:21:00 [只看该作者]

出错是正常,因为Load之前,因为重新加载的话,Current会为空的,直到加载结束。

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


加好友 发短信 一级勋章
等级:版主 帖子:1993 积分:19397 威望:0 精华:20 注册:2008/9/2 10:09:00
  发帖心情 Post By:2009/7/31 14:27:00 [只看该作者]

以下是引用狐狸爸爸在2009-7-31 14:21:00的发言:
出错是正常,因为Load之前,因为重新加载的话,Current会为空的,直到加载结束。

确实如此,加个判断就可以了:If CurrentTable.Current Isnot nothing。
谢谢老六的点拨


 回到顶部