上一页 1 ··· 175 176 177 178 179 180 181 182 183 ··· 203 下一页
摘要: 使用结构或结构数组, 一般是不需要主动分配内存的, 譬如: var pts: TPoint;begin pts.X := 1; pts.Y := 2; ShowMessageFmt('%d,%d', [pts.X, pts.Y]); {1,2}end;//结构数组:var Arr: array[0..2] of TPoint; i: Integer;begin for i := 0 to Length(Arr) - 1 do begin Arr[i].X := i; Arr[i].Y := Trunc(Sqr(i)); end; ShowMessageFmt('... 阅读全文
posted @ 2009-09-29 09:47 delphi中间件 阅读(313) 评论(0) 推荐(0)
摘要: FillMemory、ZeroMemory 一目了然的两个函数, 但其实它们都是调用了 FillChar;清空不过就是填充空字符(#0: 编号为 0 的字符), 说来说去是一回事.为了下面的测试, 先写一个以十六进制方式查看内存的函数: function GetMemBytes(var X; size: Integer): string;var pb: PByte; i: Integer;begin pb := PByte(X); for i := 0 to size - 1 do begin Result := Result + IntToHex(pb^, 2) + #32;... 阅读全文
posted @ 2009-09-29 09:39 delphi中间件 阅读(283) 评论(0) 推荐(0)
摘要: var Source,Dest: string;begin Source := '123456789'; Dest := '---------'; Move(Source[5], Dest[3], 4); ShowMessage(Dest); {--5678---}end; 阅读全文
posted @ 2009-09-18 17:10 delphi中间件 阅读(199) 评论(0) 推荐(0)
摘要: uses zlib; //将Src使用Zlib压缩后存入Dst当中 procedure PackStream(const Src:TStream; Dst:TStream); var CompStream: TCompressionStream; begin //增加“断言”以防止输入参数有误 Assert(Src <> Nil); Assert(Dst <> Nil); CompStream := TCompressionStream.Create(clDefault,Dst); try //将源数据的偏移转到首部 Src.Seek(0,soFromBeginning 阅读全文
posted @ 2009-09-09 15:15 delphi中间件 阅读(508) 评论(0) 推荐(0)
摘要: 格式:操作数 Shl/Shr 移动位数说明:操作数与返回值都是整数例子:16(10) = 10000(2) 16(10) Shr 1 = 10000(2) Shr 1 = 1000(2) = 8(10) 16(10) Shr 2 = 10000(2) Shr 2 = 100(2) = 4(10)说明:一个整数(I)按位左移一位,相当于把它乘以2,即 I * 2 一个整数(I)按位右移一位,相当于把它除以2,即 I Div 2 一个整数(I)按位左移2 位,相当于把它乘以2再乘2,即 (I * 2) * 2 一个整数(I)按位右移2 位,相当于把它除以2再除2,即 (I Div 2) Div 2 阅读全文
posted @ 2009-09-09 15:13 delphi中间件 阅读(287) 评论(0) 推荐(0)
摘要: TPrinter 类是Delphi 对Windows 打印处理系统的封装,它能够帮助程序员在开发打印程序时尽可能地减少工作量。在程序中使用TPrinter,只要在单元的Use 子句后面添加Printers 即可。当前打印机的DevMode 结构的句柄可以通过调用Tprinter 类中的GetPrinter 方法来获取。当程序获得DevMode 结构的句柄后,就调用GlobalLock 函数来得到指向该结构的指针,随后可对结构中的某些成员进行修改。下面就举一个例子来说明这一问题:假设当前打印机的默认纸张尺寸是A3 纸,现在要打印长度为114mm、宽度为190mm 的纸张。为了简单起见,我们只在F 阅读全文
posted @ 2009-09-09 15:11 delphi中间件 阅读(907) 评论(0) 推荐(0)
摘要: 在Delphi中有一个THashedStringlist类,使用这个类可以实现Hash表的操作.使用这个类需要引用IniFiles头文件.Hash表正是为了提高检索速度而设计出来的. 例如:我们定义的数据结构是:以下是引用片段: RTest=record Key:Integer; Name:String[20]; Sex:Boolean; Age:Integer; end; PTest=^RTest; 1:创建Hash表. ScHash:=THashedStringlist.Create; 2:将数据结构加入Hash表中. var Index:I... 阅读全文
posted @ 2009-09-02 10:06 delphi中间件 阅读(299) 评论(0) 推荐(0)
摘要: Variant数组Variant:一种可以拥有各种数据类型;也可以告诉目前存储的数据是什么类型(通过使用VarType函数);可以给相同的Variant分配不同的数据类型,只要Variant包含数字值就可以执行算法;variant数组只不过是variant型的数组,不必包含同类型的数据; variant数组的创建方法:functionVarArrayCreate(constBounds:arrayofInteger;VarType:integer):variant;Bounds:告诉数组的上下界;VarType:决定了数组的中存储什么类型的数据。例如:创建数组的数组,可以模仿任何类型的数据结构 阅读全文
posted @ 2009-08-06 16:58 delphi中间件 阅读(379) 评论(0) 推荐(0)
摘要: //取指定文件夾及其子文件夾內指定類型文件列表procedure _GetFileList(AStrings: TStrings; ASourFile, FileName: string);// 調用示例: _GetFileList(FileList, 'c:/', '*.pas')var sour_path, sour_file: string; TmpList: TStringList; FileRec, subFileRec: TSearchrec; i: Integer;begin if rightStr(trim(ASourFile), 1) < 阅读全文
posted @ 2009-08-06 14:11 delphi中间件 阅读(212) 评论(0) 推荐(0)
摘要: (1) CreateThreadl 功能——创建一个在调用进程的地址空间中执行的线程l 格式HANDLE CreateThread( LPSECURITY_ATTRIBUTES lpThreadAttributes,DWORD dwStackSize,LPTHREAD_START_ROUTINE lpStartAddress,LPVOID lpParamiter,DWORD dwCreationFlags,Lpdword lpThread );l 参数说明lpThreadAttributes——指向一个LPSECURITY_ATTRIBUTES(新线程的安全性描述符)。dwStackSize— 阅读全文
posted @ 2009-07-22 18:04 delphi中间件 阅读(216) 评论(0) 推荐(0)
上一页 1 ··· 175 176 177 178 179 180 181 182 183 ··· 203 下一页