FSW4组件: 文件夹监控,当被监控的文件夹或者里面的文件变化时触发。
组件会自动调用你指定的函数,这样你就可以实时刷新文件夹列表。
例如:我们软件的常用报表功能窗口可以用到。
例子:
窗体级别变量: Private FSW As Object
在form_load 时 set FSW=myapp.createobject("FSW4") '旧安装版为 FSW4.O4
‘’Form_Activate中启动监控,不要在form_load中进行,否则窗口将显示不出来
Private Sub Form_Activate()
On Error Resume Next
Static isRun As Boolean
If isRun Then Exit Sub
isRun = True
FSW.RegWatch tplPath, AddressOf WatchProc
End Sub
‘’在窗口里面增加一个public 过程,这个过程是当文件夹有变化时候,你的具体的处理过程.
public sub ReflashFolder()
‘’你的具体实现
end sub
另外,在一个模块里面增加一个 过程WatchProc,这个过程是当有文件夹变化的时候,组件回调这个过程
Public Sub WatchProc()
On Error Resume Next
Dim f As Form
For Each f In Forms
‘’这里判断是否你的窗口,如果是,就调用你窗口的public的过程
f.ReflashFolder
Next
End Sub
还有必须注意的:
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
On Error Resume Next
‘’注意必须停止监视才能保证主程序正常退出
FSW.UnRegWatch
Set FSW = Nothing
End Sub