在一些VB6代码中,我有一个用于TreeView Collapse事件的处理程序:
Private Sub MyTree_Collapse(ByVal Node as MSComCtlLib.Node)
每当树中的节点被折叠时,无论是由用户还是程序自动执行,都会调用此函数。但事实证明,通过一些迂回的执行,可能会导致此处理程序最终告诉某个节点要折叠,从而导致无限递归。
我可以想到多种方法来解决这个问题,但在我看来,最简单的方法是告诉TreeView在一段时间内不要触发事件。但是我找不到一个简单的调用让我这样做。有人成功地做到了这一点吗?还是我需要以其他方式跟踪状态,以便在递归事件出现时做出适当的响应?