Foxtable(狐表)用户栏目专家坐堂 → 用了StopRedraw点击目录树节点时卡死的问题


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

主题:用了StopRedraw点击目录树节点时卡死的问题

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


加好友 发短信
等级:八尾狐 帖子:1909 积分:16987 威望:0 精华:0 注册:2014/7/29 19:09:00
用了StopRedraw点击目录树节点时卡死的问题  发帖心情 Post By:2017/10/7 19:06:00 [显示全部帖子]

因为某种条件禁止勾选目录树节点,用了下面的代码在勾选后立即取消勾选
'e.Form.StopRedraw()
'tr1.StopRedraw()
'tr2.StopRedraw()
.......
If e.Node.Checked = True Then
    e.Node.Checked = iif(e.node.checked,False,True)  '恢复复选状态
   'e.Node.Checked = false  '用这句结果也是一样
    MessageBox.Show("只有选中按部门角色设置权限时才能勾选表单或流程!","提示")
    Return
End If

If e.Node.Checked = false Then
msgbox(11)
......
end if

'e.Form.ResumeRedraw()
'tr1.ResumeRedraw()
'tr2.ResumeRedraw()

上面的代码如果用的stopRedraw后,点击节点会卡住半天,如果不用则没有问题,但会有屏闪问题
如果用stopRedraw后,取消中间的Return又没有问题,但就是导致If e.Node.Checked = false Then 里面的代码还要执行

是什么原因?

谢谢!



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


加好友 发短信
等级:八尾狐 帖子:1909 积分:16987 威望:0 精华:0 注册:2014/7/29 19:09:00
  发帖心情 Post By:2017/10/7 21:23:00 [显示全部帖子]

原来是这个原因啊,那不是每个一Return前用Resumeredraw,之后又要用Stopredraw,如果return有几处,不是很繁琐?
谢谢!

 回到顶部