以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- DrawCell事件刷新有点问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=58965) |
-- 作者:jnletao -- 发布时间:2014/10/27 14:38:00 -- DrawCell事件刷新有点问题 关联子表DrawCell事件, If e.Table.IsRelation Then If e.Table.IsChild Then If e.Row.IsGroup = False Then \' 用于在单据窗口中将所有负值显示为正值 If Forms("单据窗口").Opened Then Select Case e.Col.Name Case "数量" e.Text = Math.Abs(CDbl(e.Row(e.Col.Name))) Case "金额" e.Text = Format(Math.Abs(CDbl(e.Row(e.Col.Name))),"N") End Select End If End If End If End If 放在窗体里执行时刷新显示。 每当单据窗体里的关联子表记录行被删除,克隆,数据被修改时,都会调用 Tables("单据子表").Refresh \'用于强制刷新子表DrawCell事件,以便子表的数量,金额列显示绝对值 。 现在问题来了。 每当删除,克隆子表记录行后,DrawCell不启动,只有当鼠标放在记录行上滑动一边,再会刷新。 ![]() [此贴子已经被作者于2014-10-27 14:38:18编辑过]
|
-- 作者:Bin -- 发布时间:2014/10/27 14:39:00 -- 在删除行事件也加入刷新代码 |
-- 作者:有点甜 -- 发布时间:2014/10/27 14:40:00 -- 删除或者克隆的时候,可以执行Tables("xxx").Refresh试试 |
-- 作者:jnletao -- 发布时间:2014/10/27 14:41:00 -- 加了。还是一样。 [此贴子已经被作者于2014-10-27 14:41:22编辑过]
|
-- 作者:Bin -- 发布时间:2014/10/27 14:47:00 -- 上例子 |
-- 作者:有点甜 -- 发布时间:2014/10/27 14:49:00 -- 例子发上来 |
-- 作者:jnletao -- 发布时间:2014/10/27 15:55:00 -- 老师,中间计算过程太复杂,我在【模拟简例】中测试到是没问题。估计与其他事件运算量有关系。 现在我在click事件里加了.Refresh。效果好了点。例子就不传了。
|