DELPHI enablecontrols,disablecontrols函数


本文整理自网络,侵删。

 DisableControls方法是在程序修改或后台有刷新记录的时候切断数据组件,如TTABLE、ADOQUERY等等与组件数据源的联系。如果没有切断,数据源中只要一有数据的改动,尤其是批量改动的话,每一笔的改动都会更新窗口中数据浏览组件的显示,这样会急剧减慢处理过程而且浪费时间。EnableControls的作用相反,用来恢复TTABLE等组件与DATASOURCE的联系,并促使数据浏览组件更新显示。
      这两个函数主要阻止组件感应显示,以加快语句执行速度。 比如,用大量的循环的时候,最好用他们。
      1. 数据集的EnableControls, DisableControls方法成对使用的时候, 如果中间的代码可能会导至出错的话必须用try..finaly DisableControls; end; 否则会导致数据感知不控制不可使用;
      2. 在遍历数据或Filter大数据的时候的要用DataSet的EnableControls与DisabbleControls, 否则窗体上的数据感知控件会闪烁.
      enablecontrols,disablecontrols是防止因数据源的改动而造成界面的闪动!在你需要刷新数据时可以调这两个函数,但建议你把它写在
try...finally语句块中!   
  如:   
  try   
      adoQuery1.disablecontrols;   
      adoQuery1.close;   
      adoQuery1.open;   
  finally   
      adoQuery1.enablecontrols;   
  end;  
  TQuery 的EnableControls 和DisableControls 方法都是继承自TDataSet 类的。由于TTable 和TQuery 都是TDataSet 的派生类,所以它们都有以上这两个方法。

相关阅读 >>

Delphi 文件,文件夹删除移动和拷贝

Delphi取得桌面工作区域的大小

Delphi中实现hextostr函数和strtohex函数

Delphi 操作sql 插入一万条数据 三种方式速度测试

Delphi sysutils.stringreplace - 替换

Delphi upload 上传文件

Delphi 打开"我的电脑"等特殊文件夹

Delphi listview中加载图片

Delphi中判断一个字符的位置在字符串开头或者末尾

Delphi 显示windows断开网络驱动器对话框

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...