ImageVerifierCode 换一换
格式:DOCX , 页数:26 ,大小:59.10KB ,
资源ID:28632021      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/28632021.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Delphi 组件使用及其代码.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Delphi 组件使用及其代码.docx

1、Delphi 组件使用及其代码Delphi 组件使用及其代码1.数组定义(1)一维数组 数组名:arrayn1 . . n2 of 数据类型;(2)二维数组 数组名:arrayn1 . . n2,m1 . . m2 of 数据类型; 或者数组名:arrayn1 . . n2 of arraym1 . . m2 of 数据类型;(3)动态数组 数组名:array of 数据类型;使用前要用SetLength(数组名,数组长度);来动态申请空间。2.使用math数学函数: 需要在uses引用里面添加math; 其中power(a,b)函数是求a的b次幂。 RandomRange(a,b)函数是随机

2、产生一个a、b之间的数。3.声明全局变量 需要在implementation之后声明; 初始化格式需要在最后一个end之后:语句:initialization赋值语句;4.常量在var后使用const关键字声明常量:如const PI = 3.14;5.枚举类型使用声明: type 枚举类型名=(枚举值1,枚举值2,);定义: var 变量名:枚举类型名;6.指针类型(1)运算符:放在变量的前面,获得变量的地址; 运算符:放在指针变量的后面,取得该指针变量中所存放地址变量的数据;(2)声明:type 指针类型名= 数据类型; var 指针变量名:指针类型名; 或者 var 指针变量名:数据类型

3、;7.日期时间函数function Now:TDateTime; /返回系统当前日期和时间function Date:TDateTime; /返回系统当前日期function Time:TDateTime; /返回系统当前时间function DateTimeToStr(DateTime:TDateTime):string;/将日期时间数据转换为字符串function StrToDateTime(const s:string):TDateTime; /将字符串转换为日期时间数据function DateToStr(DateTime:TDateTime):string;/将日期数据转换为字符串f

4、unction TimeToStr(DateTime:TDateTime):string;/将时间数据转换为字符串function FormatDateTime(const Format:string;DateTime:TDateTime):string;/按指定格式 输出日期时间例如:formatDatetime(yyyy-mm-dd,now);formatDatetime(hh:mm:ss,now);8.自定义过程(1)在type下声明: procedure ();(2)将光标移动定位在过程声明中,按Ctrl+Shift+C,实现自动生成部分过程框架。procedure ();begin;

5、end;(3)自定义过程的调用: 过程名();9.自定义函数(1)函数不用声明;(2)function ():;begin;end;(3)自定义函数的调用: 函数名(实参表);10.对话框函数MessageDlg(1):=MessageDlg(信息内容,类型,按钮组,HelpCex);(2)类型:mtWarning 含有感叹号符号的警告对话框 mtError 含有红色差号符号的错误对话框 mtInformation 含有蓝色i符号的信息对话框 mtConfirmation 含有蓝色?符号的确认对话框 mtCustom 不含图标的一般对话框,对话框的标题是程序的名称 按钮组: mbYes Yes

6、按钮,函数返回mrYes或6 mbNo No按钮,函数返回mrNo或7 mbOk Ok按钮,函数返回mrOk或1 mbCancel Cancel按钮,函数返回mrCancel或2 mbHelp Help按钮 mbAbort Abort按钮,函数返回mrAbort或3 mbRetry Retry按钮,函数返回mrRetry或4 mbIgnore Ignore按钮,函数返回mrIgnore或5 mbAll All按钮,函数返回mrAll或8 mbNoToAll NoToAll按钮,函数返回mrNoToAll或9 mbYesToAll YesToAll按钮,函数返回mrYesToAll或10 Hel

7、pCtx指定当用户单击“Help”按钮或键时,现实的帮助主题。例如:if MessageDlg(您确定要关闭窗口吗?,mtConfirmation,mbYes,mbNo,0)=mryes then11.基本知识点(1)if (key in 0,1.9,#13,#8) then /判断按下的是否为数字键、回车键和退格键 #0表示没有任何内容 #32表示空格 (2)Delphi中Randomize方法用来随机初始化数据。(3)Label的Transparent属性用来设置Label的显示方式是否透明显示。(4)StringGrid属性Cells【A,B】,其中A控制列,B控制行。(5)Messag

8、eBox显示消息: MessageBox(句柄,消息,消息框名,类型)例如:MessageBox(0,PChar(你好+edit1.text),欢迎你,MB_OK) MessageBox(0,PChar(你好+edit1.text),提示,MB_ICONASTERISK and MB_ICONINFORMATION)/提示框 MessageBox(0,PChar(密码不能为空!),警告,MB_ICONEXCLAMATION)/警告框12.制作闪现窗体在Project-option中将闪现窗体设置为Available forms,之后显示的主窗体设置为Auto-create forms,并在主窗

9、体的form的create事件中加入以下代码: (1) 先声明一个闪现窗体的变量:如About:=TForm2; 主窗体代码:About:=TForm2.Create(Application);/生成闪现窗体 About.show; /显示闪现窗体 (2)闪现窗体加入一个Timer事件,并在Timer的Timer事件中加入下面代码: close; /关闭窗体Release; /释放变量 注意:可用Timer的Interval控制闪现窗体出现的事件,以毫秒为单位。13.SavaDialog组件(1)过滤文件:Filter(2)保存文件默认后缀名DefaultExt属性填写后缀名,注意不要加.;(

10、3)保存代码:if savedialog1.Execute then begin memo1.Lines.SaveToFile(form1.SaveDialog1.FileName); application.MessageBox(文件保存成功!,提示!,64); end;14.复制、移动文件(1)复制文件 CopyFile(d:db123.txt,f:db123.txt,False); WinExec(cmd /c copy d:db123.txt f:db123.txt,0); 使用以上函数目标目录必须存在! CopyFile(源文件路径,目标文件路径,False(存在覆盖)True(存在

11、不覆盖));(2)移动正在使用的文件 MoveFileEx(所要移动的文件路径(及文件名),目标文件的路径(和文件名),移动标记); 移动标记取值:MOVEFILE_REPLACE_EXISTING=$00000001;/覆盖已经存在的文件,来源文件和目标不能在同一目录MOVEFILE_COPY_ALLOWED=$00000002;/如果目标文件被移动到不同的卷上,则函数通过拷贝后删除来源文件的方法来模拟移动文件MOVEFILE_DELAY_UNTIL_REBOOT=$00000004;/在系统重新启动后再执行移动操作,这个参数只能被拥有管理员权限或localsystem权限的程序使用,不能和

12、MOVEFILE_COPY_ALLOWED一起使用。MOVEFILE_WRITE_THROUGH=$00000008;/这个标记允许函数在执行完文件移动后才返回,否则不等文件移动完毕后就直接返回。如果设置了MOVEFILE_DELAY_UNTIL_REBOOT标记,则MOVEFILE_WRITE_THROUGH标记将被忽略。MOVEFILE_CREATE_HARDLINK=$00000010;/系统保留,以供将来使用。MOVEFILE_FAIL_IF_NOT_TRACKABLE=$00000020;/如果来源文件为1个link文件,但是文件在移动后不能够被tracked,则函数执行失败。如果目

13、标文件在一个fat格式的文件系统上,则上述情况可以发生。该参数不支持NT系统。15.在系统菜单中添加菜单项i:=GetSystemMenu(Handle,False); /获取窗体的句柄 AppendMenu(i,MF_SEPARATOR,0,nil);/添加分割线 AppendMenu(i,MF_STRING,100,我的菜单(&E);/添加菜单项16.创建和删除文件夹DirectoryExists(路径) ;/判断文件夹是否存在ForceDirectories(路径); /创建文件夹mkdir(路径);/创建一个指定的目录RmDir(路径); /删除文件夹17.建立临时文件function

14、 GetTempFileName(建立临时文件路径,临时文件的前缀(识别前3位),用于建立临时文件的号码,返回建立的临时文件名称)例如: GetTempFileName(PChar(dir),TEST,0,Temp);/生成临时文件名18.把文件删除到回收站(注意:需要引用shellAPI单元)首先:varSHFile:SHFILEOPSTRUCT; with SHFile do begin Wnd:=0; /拥有者窗口句柄 wFunc:=FO_DELETE;/文件操作功能,可选项FO_COPY、FO_DELETE、FO_MOVE、FO_RENAME pFrom:=PChar(DFile);

15、/源文件 /pto 目标文件fFlags:=FOF_ALLOWUNDO; /文件控制标志/fAnyOperationsAborted 用户是否中断操作/hNameMapping 指向一个SHNAMEMAPPING结构的指针 lpszProgressTitle:=将文件删除到回收站; /进程标题 end; SHFileOperation(SHFile);/删除文件,需要引用shellAPI单元19.引用动态链接库(DLL文件使用)(1)静态引用动态链接库在implementation后function 名称():Integer;stdcall;external XX.dll;(2)动态引用动态链

16、接库1)LoadLibrary函数用于载入指定的动态链接库,并将它映射到当期进程使用的地址空间。函数原型如下:HINSTANCE LoadLibrary(LPCTSTR lpLibFileName);lpLibFileName:指定要载入的动态链接库的名称;2)FreeLibrary函数用于释放那些由应用程序明确装载的DLL文件。函数原型如下:BOOL FreeLibrary(HMODULE hLibModule);hLibModule:要释放的一个库的句柄;注意:1个LoadLibrary函数对应1个FreeLibrary函数。3)GetProcAddress函数用于获取DLL导出函数的地址

17、,使用返回的函数指针调用DLL函数。函数原型如下:FARPROC GetProcAddress(HMODULE hModule,LPCSTR lpProcName);hModule:包含此函数的DLL模块的句柄;lpProcName:包含函数名以NULL结尾的字符串,或者是指定函数的序数值。例子:Tgetn=function:pchar;stdcall; /在var前声明procedure TForm1.Button1Click(Sender: TObject);var onehandle:THandle; fun:Tgetn;begin onehandle:=loadlibrary(getn

18、ame.dll); try if onehandle 0 then fun:=GetProcAddress(onehandle,getnames); if not(fun=nil)then label1.Caption:=fun; finally freelibrary(onehandle); end;end;20.清空回收站首先定义常量:const HERB_NOCONFIRMATION=$00000001; SHERB_NOPROGRESSUI=$00000002; SHERB_NOSOUND=$00000004;然后引入静态链接库:(需要添加引用shellAPI单元)function S

19、HEmptyRecycleBinA(Wnd:HWND;str:PChar;WRD:DWORD):Integer;stdcall;external SHell32.dll;最后:SHEmptyRecycleBinA(application.handle,SHERB_NOCONFIRMATION+SHERB_NOPROGRESSUI+SHERB_NOSOUND);21.FileListBox1.Items.Stringsi用于得到FileListBox中指定的文件名。22.更改目录(1)GetDir(D:Byte;var S:string);/获取当前路径D:目标磁盘。取值如下:0:default

20、;1:A;2:B;3:C;S:存储路径的字符串;(2)ChDir(const S:string);/改变当前路径S:改变后的路径(3)ExtractFilePath(OpenDialog1.FileName);获取打开文件路径 ExtractFileName(OpenDialog1.FileName);获取打开的文件名23.对ini文件进行操作(需要引用IniFiles单元) 新建ini文件PersionInfoName=赵志勇varini:TIniFile;;ini:=TIniFile.Create(文件路径+文件名.ini);/打开ini文件edit1.Text:=ini.ReadStri

21、ng(PersionInfo,Name,赵志勇);/读取文件ini.WriteString(PersionInfo,Name,Edit1.Text);/修改文件读取或修改ini文件后都需要释放资源:FreeAndNil(ini);24.获取窗口文本int GetWindowText(HWND hwnd,LPTSTR lpString,int nMaxCount);hwnd:欲获取文字的窗口句柄lpString:预定义的一个缓冲区,至少有nMaxCount个字符大小。nMaxCount:lpString缓冲区的长度。例如:GetWindowText(H_Window,text,255)25.St

22、rPas(字符串)函数StrPas(字符串);/将零终止字符串转换为Pascal类型字符串。26.在程序中调用.hlp文件WinHelp(handle,path,命令参数,附加数据(与命令参数有关));例如: WinHelp(Self.Handle,PChar(dir+help.hlp),HELP_CONTENTS,0);27.获取硬盘序列号Bool GetVolumeInformation(LPCSTR lpRootPathName,LPTSTR lpVolumeNameBuffer, DWORD nVolumeNameSize,LPDWORD lpVolumeSerialNumber, L

23、PDWORD lpMaximumComponentLength,LPDWORD lpFileSystemFlags, LPTSTR lpFileSystemNameBuffer,DWORD nFileSystemNameSize)lpRootPathName:欲获取信息卷的根路径;lpVolumeNameBuffer:用于装载卷名的一个字符串;(nil)nVolumeNameSize:lpVolumeNameBuffer字符串的长度;(sizeof()lpVolumeSerialNumber:用于装载磁盘卷序列号的变量;lpMaximumComponentLength:指定一个变量,用于装载文

24、件名每一部分的长度;lpFileSystemFlags:用于装载一个或多个二进制位标志的长度;lpFileSystemNameBuffer:指定一个缓冲区,用于装载系统的名称;(nil)nFileSystemNameSize:lpFileSystemNameBuffer字符串的长度。(0)例如:function Get_HD_Serial(const Driverdir:Char):string;var nu:DWORD; vf:DWORD; volumeinfo:array0.MAX_PATHof Char; V_n:DWORD;begin GetVolumeInformation(PCha

25、r(Driverdir+:),nil,SizeOf(volumeinfo),V_n,nu,vf,nil,0); Result:=Format(V_S:%8.0X,V_n);end;28.判断驱动器的类型function GetDriveType(lpRootPathName:PChar):UNIT;stdcall;lpRootPathName:驱动器盘符。该函数返回一个整型标记符:DRIVE_UNKNOWN(0):驱动器盘符无效;DRIVE_NO_ROOT_DIR(1):这不是一个有效的驱动器;DRIVE_REMOVABLE(2):可移动驱动器;DRIVE_FIXED(3):不可移动(本地)驱

26、动器; DRIVE_REMOTE(4):;网络(远程)驱动器; DRIVE_CDROM(5):;光盘驱动器;DRIVE_RAMDISK(6):RAM虚拟驱动器;29.取消磁盘共享使用DOS命令“NET SHARE 盘符$ /DEL”来实现;function WinExec(lpCmdLine:LPCSTR;uCmdShow:UNIT):UNIT;stdcall;lpCmdLine:表示命令行;uCmdShow:表示是否显示窗口,如果为SW_Show将显示窗口,为SW_Hide隐藏窗口。例如:取消C盘共享:inExec(cmd.exe /k NET SHARE C$ /DEL,SW_SHOW);

27、30.检测驱动器容量BOOL GetDiskFreeSpace(LPCTSTR lpRootPathName,LPDWORD lpSectorsPerCluster, LPDWORD lpBytesPerSector,LPDWORD lpNumberOfFreeCluster, LPDWORD lpTotalNumberOfClusters);lpRootPathName:不包括卷名的一个磁盘根路径;(C:)lpSectorsPerCluster:用于装载一个簇内扇区数的变量;(A)lpBytesPerSector:用于装载一个扇区内字节数的变量;(B)lpNumberOfFreeCluste

28、r:用于装载磁盘上剩余簇数的变量;(C)lpTotalNumberOfClusters:用于装载磁盘上总簇数的变量。(D)磁盘大小=A*B*D;磁盘剩余空间=A*B*C。(单位:B)例如:GetDiskFreeSpace(C:,sec1,byt1,cl1,cl2);31.格式化磁盘需要先静态引用动态链接库:function formatdrive(hwnd:HWND;drive:Word;formatid:Word;options:Word):LongInt stdcall; external shell32.dll name SHFormatDrive;然后才可以使用。function Fo

29、rmatDrive(hwnd:HWND;drive,formatid,options:word):longint stdcall;hwnd:调用该函数的窗口句柄;drive:格式化的目标磁盘,从0开始;formatid:格式化ID;options:格式化选项。32.显示、隐藏鼠标int ShowCursor(BOOL bShow);bShow:该参数为True显示鼠标指针,False隐藏鼠标指针。例如:ShowCursor(False);/隐藏鼠标ShowCursor(True);/显示鼠标33.锁定计算机LockWorkStation;/锁定计算机34.检测系统启动模式int GetSyst

30、emMetrics(int nIndex);/用于得到被定义的系统数据或者系统配置信息nIndex取值:SM_CLEANBOOT:返回系统启动方式返回值 0:正常启动 1:安全模式启动 2:网络安全模式启动SM_CMOUSEBUTTONS:返回值为系统支持的鼠标键数,返回0则表示系统没有安装鼠标。35.设置桌面颜色BOOL WINAPI SetSysColors(int cElements,CONST INT *lpaElements,CONST COLORREF *lpaRgbValues);cElements:欲改变对象的数量;lpaElements:按引用传递。这是1个整数数组的第1个元素,每个条目都包含1个常数,指定一个Windows显示对象,可参考GetSysColor函数。lpaRgbValues:按引用传递。这是RGB值数组的第一个元素。该数组用于设置lpSysColor数组中的

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1