易截截图软件、单文件、免安装、纯绿色、仅160KB

Delphi中ADO异步执行方式

     当A D O开始处理数据后,应用程序必须等到A D O处理完毕之后才可以继续执行。但
是除了同步执行方式之外, A D O也提供了异步执行的方式,允许当A D O处理时,
应用程序仍然能够先继续执行。而当A D O处理数据完毕之后, A D O会以事件的方
式通知应用程序,此时应用程序可以再根据A D O执行的结果来采取相应的动作。
使用异步执行方式有许多用途,例如,如果应用程序需要处理花费大量时间的动
作,那么A D O可以选择以异步执行方式让A D O在后台执行,而让应用程序继续处
理图形用户接口或用户输入的数据。
在A D O中使用异步执行方式非常简单,只需要对A D O数据集的E x e c u t e O p t i o n s
属性值进行适当的设定即可。现在就让我们以一实际的范例应用程序来说明如何让
A D O以异步的方式来处理数据。
下载
1) 在D e l p h i集成开发环境中关闭所有的项目。
2) 建立一个新的应用程序项目,在主窗体中放入TA D O C o n n e c t i o n对象连接到
数据库。
3) 在主窗体中放入TA D O D a t a S e t组件。设定它的C o n n e c t i o n属性值为步骤2) 的
TA D O C o n n e c t i o n,并且在它的C o m m a n d Te x t属性值中使用Select * from ADOTe s t D a t a s
以取得所有的数据。再设定它的A c t i v e属性值为Tr u e以打开范例数据表。
4) 放入TDataSource组件,设定它的DataSet属性值为步骤3) 加入的TADODataSet
组件。
5) 放入T D B N a v i g a t o r和T D B G r i d组件,设定它们的D a t a S o u r c e组件为步骤4加
入的T D a t a S o u r c e组件。
6) 在主窗体中放入两个T B u t t o n组件以及一个T P r o g r e s s B a r组件,并且设定它
的相关属性值。此时主窗体如图3 - 1 2所示。
图3-12 范例应用程序的主窗体
7) 最后在主窗体中放入一个TA D O C o m m a n d组件。设定它的C o n n e c t i o n属性
值为步骤2) 的TA D O C o n n e c t i o n,并且在它的C o m m a n d Te x t属性值中使用S e l e c t
count(*) from ADOTe s t D a t a s以便从A D O Te s t D a t a s数据表中取得所有数据的笔数。
8) 在主窗体的O n A c t i v a t e事件处理程序中撰写如下的程序代码:
第3章撰写使用A D O技术的应用系统(二) 1 1 1
下载
p r o c e d u r e TForm1.FormActivate(Sender: TObject);
v a r
sRecNo : String;
b e g i n
ProgressBar1.Max := ADOCommand1.Execute.Fiel


相关文档:

unix C 、delphi的多语言文本字符换行的问题

今天项目组发生一个事情就是,后台aix上对多语言文本(英语+汉字)换行问题搞不太清楚。
最早前台的多字符的代码我检查了一下(按照0-128以外算中文的代码)发现不是安全的代码。
(delphi 7.0)
delphi安全的混合字符的操作方法是:
在strsUtils单元中
leftstr
MidStr
Rightstr
aix下是: ......

Delphi 创建目录及写日志文件


Delphi 创建目录及写日志文件
var
TF: TextFile;
LogFile: string;
txt :string;
sysDir:string;
//创建按钮
procedure TForm1.Button1Click(Sender: TObject);
begin
sysDir:=extractfilepath(application.ExeName );
if not directoryexists(sysdir+'log\') then
createdir(sysdir+'log ......

Delphi中用ADO系列控件获得存储过程的Return值

在Delphi中Ado系列控件使用xxxxx.Parameters.Refresh,可以获得存储过程的Return值
以TADOStoredProc为例
  ADOStoredProc1.Connection := 'xxxx';
  ADOStoredProc1.ProcedureName := 'XXXX';
  ADOStoredProc1.Parameters.Refresh;   //刷新存储过程的参数列表
 //参数赋值
 ADO ......

Delphi中的THashTable

在Delphi中,Inifiles单元中有一个TStringHash的类,不过它的Value仅支持Integer(其实也不是问题,有其它类型可以将变量变为Pointer),有点不舒服,今天没事做就把它替换为variant了,其中Key的名称大小写无关,就是为了加快开发速度!
使用Hashtable,查找和删除复杂度都是常数级别的!
type
PPHashItem = ^PHashItem;
......

Delphi + Asm TBits类的学习

技术交流,DH讲解. 在D2010的classes中有个TBits类,这个类主要是位操作的. TBits = class
private
FSize: Integer;
FBits: Pointer;
procedure Error;
procedure SetSize(Value: Integer);
procedure SetBit(Index: Integer; Value: Boolean);
function GetBit(Index: Integer): Boole ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号