Foxtable(狐表)用户栏目专家坐堂 → 3月19日更新


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

主题:3月19日更新

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
3月19日更新  发帖心情 Post By:2010/3/19 20:42:00 [显示全部帖子]

1、增加文件监视功能

文件监视器

文件监视器用于监控指定目录下的文件,当创建、修改或删除文件时,会触发事件,通过设置对应的事件代码,可以间接和第三方的程序实现及时的数据交流。

在管理项目功能区,单击下面的按钮,可以设置文件监视器的属性和代码:


 
图片点击可在新窗口打开查看此主题相关图片如下:1235.gif
图片点击可在新窗口打开查看


FileWatcher表示文件监视器,其属性有:

  • Enabled
    逻辑型,是否启用文件监视器。
     
  • Path
    字符型,设置监视目录的路径,不能将监控目录设置为根目录。
     
  • Filter
    字符型,设置要监控的文件类型,例如要监控文本文件,可以设置为"*.txt";要监控指定的某个文件,可以直接设置为文件名,例如"data.mdb";如果要监控所有文件,则设置为"*.*"
     
  • Delay
    设置事件延迟触发时间,默认为500毫秒,也就是文件发生变动后0.5秒才触发对应的事件。
    在延迟触发时间内,如果同一个文件发生了多次变动,将只触发一次事件。
    最小可设置为100毫秒。
    保存一个大文件,可能要经过多次的写入,持续的时间也会比较长,所以合理设置此属性是相当重要的。

示例

With FileWatcher
    .
Path = "c:\Data"
    .
Filter = "Sale.mdb"
    .
Delay = 1000

End With

执行上面的代码后,将开始监控文件“c:\data\Sale.mdb”。
其实一般是通过菜单来设置FileWatcher的,很少需要利用代码来设置。

FileWatcher有三个事件:

  • FileCreated
    创建文件后执行。
     
  • FileDeleted
    删除文件后执行。
     
  • FileChanged
    修改文件后执行。

e参数属性:

Name:     触发事件的文件名,不含路径。
FullPath:触发事件的文件名,含路径。

示例

假如订单表是外部表,来自文件c:\data\Sale.mdb,我们可以监控此文件,一旦此文件发生变动,就重新加载订单表数据。
首先我们要监控此文件,然后将
FileChanged事件代码设置为:

DataTables("表A").Load()

看上去很简单,不过还有一个毛病,就是自己保存数据后,也会触发FileChanged,导致重新加载数据。为避免这种情况,我们可以自己做一个保存按钮:

FileWatcher.Enabled = False
DataTables
.Save()
FileWatcher.Enabled =
True

上面的代码在保存前停用文件监视器,保存结束后,重新开启文件监视器。


2、增加自定义汇总模式的功能:


图片点击可在新窗口打开查看此主题相关图片如下:1238.gif
图片点击可在新窗口打开查看

实现方法参考:


图片点击可在新窗口打开查看此主题相关图片如下:spximage.gif
图片点击可在新窗口打开查看

3、重写了SaveExcel方法,现在兼容性更好了。





[此贴子已经被作者于2010-3-19 20:42:45编辑过]

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/3/20 16:43:00 [显示全部帖子]

以下是引用卟离卟弃在2010-3-20 14:54:00的发言:

可不可以这样理解,目前 这样的功能,目前只能通过按钮代码来实现,,还不能在系统菜单中,设置后汇总实现???????


是的


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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/3/21 10:49:00 [显示全部帖子]

我测试ok,你可能设置错了
[此贴子已经被作者于2010-3-21 10:49:43编辑过]

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/3/21 11:16:00 [显示全部帖子]

没有发现你说的问题

 回到顶部