(DELPHI)API函数大全
Delphi 常用API 函数

1.Delphi 常用API 函数2.3.AdjustWindowRect 给定一种窗口样式,计算获得目标客户区矩形所需的窗口大小4.AnyPopup 判断屏幕上是否存在任何弹出式窗口5.ArrangeIconicWindows 排列一个父窗口的最小化子窗口6.AttachThreadInput 连接线程输入函数7.BeginDeferWindowPos 启动构建一系列新窗口位置的过程8.BringWindowToTop 将指定的窗口带至窗口列表顶部9.CascadeWindows 以层叠方式排列窗口10.ChildWindowFromPoint 返回父窗口中包含了指定点的第一个子窗口的句柄11.12.ClientToScreen 判断窗口内以客户区坐标表示的一个点的屏幕坐标13.CloseWindow 最小化指定的窗口14.CopyRect 矩形内容复制15.DeferWindowPos 该函数为特定的窗口指定一个新窗口位置16.DestroyWindow 清除指定的窗口以及它的所有子窗口17.DrawAnimatedRects 描绘一系列动态矩形18.EnableWindow 指定的窗口里允许或禁止所有鼠标及键盘输入19.EndDeferWindowPos 同时更新DeferWindowPos调用时指定的所有窗口的位置及状态20.EnumChildWindows 为指定的父窗口枚举子窗口21.22.EnumThreadWindows 枚举与指定任务相关的窗口23.EnumWindows 枚举窗口列表中的所有父窗口24.EqualRect 判断两个矩形结构是否相同25.FindWindow 寻找窗口列表中第一个符合指定条件的顶级窗口26.FindWindowEx 在窗口列表中寻找与指定条件相符的第一个子窗口27.FlashWindow 闪烁显示指定窗口28.GetActiveWindow 获得活动窗口的句柄29.GetCapture 获得一个窗口的句柄,这个窗口位于当前输入线程,且拥有鼠标捕获(鼠标活动由它接收)30.GetClassInfo 取得WNDCLASS结构(或WNDCLASSEX结构)的一个副本,结构中包含了与指定类有关的信息31.32.GetClassLong 取得窗口类的一个Long变量条目33.GetClassName 为指定的窗口取得类名34.GetClassWord 为窗口类取得一个整数变量35.GetClientRect 返回指定窗口客户区矩形的大小36.GetDesktopWindow 获得代表整个屏幕的一个窗口(桌面窗口)句柄37.GetFocus 获得拥有输入焦点的窗口的句柄38.GetForegroundWindow 获得前台窗口的句柄39.GetLastActivePopup 获得在一个给定父窗口中最近激活过的弹出式窗口的句柄40.GetLastError 针对之前调用的api函数,用这个函数取得扩展错误信息41.42.GetParent 判断指定窗口的父窗口43.GetTopWindow 搜索内部窗口列表,寻找隶属于指定窗口的头一个窗口的句柄44.GetUpdateRect 获得一个矩形,它描叙了指定窗口中需要更新的那一部分45.GetWindow 获得一个窗口的句柄,该窗口与某源窗口有特定的关系46.GetWindowContextHelpId 取得与窗口关联在一起的帮助场景ID47.GetWindowLong 从指定窗口的结构中取得信息48.GetWindowPlacement 获得指定窗口的状态及位置信息49.GetWindowRect 获得整个窗口的范围矩形,窗口的边框、标题栏、滚动条及菜单等都在这个矩形内50.51.GetWindowText 取得一个窗体的标题(caption)文字,或者一个控件的内容52.GetWindowTextLength 调查窗口标题文字或控件内容的长短53.GetWindowWord 获得指定窗口结构的信息54.InflateRect 增大或减小一个矩形的大小55.IntersectRect 这个函数在lpDestRect里载入一个矩形,它是lpSrc1Rect与lpSrc2Rect两个矩形的交集56.InvalidateRect 屏蔽一个窗口客户区的全部或部分区域57.IsChild 判断一个窗口是否为另一窗口的子或隶属窗口58.59.IsIconic 判断窗口是否已最小化60.IsRectEmpty 判断一个矩形是否为空61.IsWindow 判断一个窗口句柄是否有效62.IsWindowEnabled 判断窗口是否处于活动状态63.IsWindowUnicode 判断一个窗口是否为Unicode窗口。
更全的Delphi函数参考大全

更全的Delphi函数参考⼤全Delphi函数参考⼤全⽥秧收集整理第1章字符串处理函数1.1 AdjustLineBreaks(S,Style) 返回将字符串的⾏分隔符调整为CR/LF序列1.2 AnsiCompareStr(S1,S2) 反回⽐较两个字符串1.3 AnsiCompareText(S1,S2) 反回⽐较两个字符串1.4 AnsiContainsStr(串1,串2) 返回字符串1是否包含⼦串21.5 AnsiContainsText(串1,串2) 返回字符串1是否包含⼦串21.6 AnsiDeQdStr(S,Q) 返回以字符Q为引号的表现形式原形1.7 AnsiEndsStr(串2,串1) 返回字符串1是否以⼦串2结尾1.8 AnsiEndsText(串2,串1) 返回字符串1是否以⼦串2结尾1.9 AnsiExtractQdStr(varSrc,Q) 返回以字符Q为引号的表现形式原形1.10 AnsiIndexStr(串1, 数组) 返回字符串1在字符串数组数组中的位置1.11 AnsiIndexText(串1, 数组) 返回字符串1在字符串数组数组中的位置1.12 AnsiLastChar(S) 返回字符串S的最后⼀个指针字符1.13 AnsiLowerCase(S) 返回字符串S的⼩写形式1.14 AnsiMatchStr(串1, 数组) 返回字符串数组数组中是否包含字符串11.15 AnsiMatchText(串1, 数组) 返回字符串数组数组中是否包含字符串11.16 AnsiQdStr(S,Q) 返回字符串S以字符Q为引号的表现形式1.17 AnsiReplaceStr(串1,串2,串3) 返回字符串1中⽤⼦串2替换成⼦串3的结果1.18 AnsiReplaceText(串1,串2,串3) 返回字符串1中⽤⼦串2替换成⼦串3的结果1.19 AnsiResemblesText(串1, 串2) 返回两个字符串是否相似1.20 AnsiSameStr(S1,S2) 返回两个字符串是否相等1.21 AnsiSameText(S1,S2) 返回两个字符串是否相等1.22 AnsiStartsStr(串2,串1) 返回字符串1是否以⼦串2开头1.23 AnsiStartsText(串2,串1) 返回字符串1是否以⼦串2开头1.24 AnsiStrComp(S1,S2) 返回⽐较两个指针字符串1.25 AnsiStrIComp(S1,S2) 返回⽐较两个指针字符串1.26 AnsiString 短字符串转为长字符串1.27 AnsiStrLastChar(P) 返回指针字符串P的最后⼀个指针字符1.28 AnsiStrLComp(S1,S2,N) 返回⽐较两个指针字符串指定长度1.29 AnsiStrLComp函数返回⽐较两个指针字符串指定长度1.30 AnsiStrLIComp(S1,S2,N) 返回⽐较两个指针字符串指定长度1.31 AnsiStrLower(Str) 返回指针字符串⼩写形式1.32 AnsiStrPos函数返回指针字符串Str2在Str1中第⼀个出现的地址1.33 AnsiStrRScan函数返回指针字符串Str2在Str1中最后⼀个出现的地址1.34 AnsiStrScan函数返回指针字符串Str2在Str1中第⼀个出现的地址1.35 AnsiStrUpper(Str) 返回指针字符串⼤写形式1.36 AnsiUpperCase(S) 返回字符串S的⼤写形式1.37 AppendStr(P, S) 在字符串P后追加字符串S1.38 AssignStr(P, S) 将字符串S更新给字符串指针P1.39 ByteToBin 字节转⼆进制串1.40 CompareMem(P1,P2,N) 返回⽐较两个内存指针1.41 CompareStr(S1,S2) 返回⽐较两个字符1.42 CompareText(S1,S2) 返回⽐较两个字符串1.43 Concat函数连接两个或多个字符串为⼀个字符串1.44 Copy函数返回字符串1从K开始的N个字符1.45 DecodeSoundexInt(AValue) 返回探测整数的解码1.46 DecodeSoundexWord(AValue) 返回探测⽂字数值的解码1.47 Delete(s,k,n)过程删除字符串中指定的字符串1.48 DisposeStr(P) 释放字符串指针P资源1.49 DupeString(串1,N) 返回字符串1的N个复本1.50 ExtractStrings函数1.51 GetHzPy 取汉字的拼⾳1.52 High(数组) 返回数组下标的最⼤值1.53 IfThen(AValue ATrue,AFalse) 返回指定的逻辑字符串1.54 Insert(s1,s2,n)过程插⼊⼀个字符(串)1.55 InStr 判断s1是否包含在s2中1.56 IntToByte 返回整数Value转换成字节数1.57 IntToHex(ValueDigits) 返回整数Value转换成⼗六进制表现结果1.58 IntToStr(Value) 返回整数Value转换成字符串1.59 IntToStrSp 带分隔符的整数-字符转换1.60 IsValidIdent(Ident) 返回字符串Ident是否是正确的标识符1.61 LeftStr(串1, N) 返回字符串1左边的N个字符1.62 Length函数返回指定字符串的长度1.63 LineStart函数1.64 LinesToStr 多⾏⽂本转单⾏(换⾏符转’\n’)1.65 Low(数组) 返回数组下标的最⼩值1.66 LowerCase(S) 返回字符串S的⼩写形式1.67 MidStr(串1,K,N) 返回字符串1从K开始的N个字符1.68 NewStr(S) 返回⼀个新的字符串指针地址1.69 Pchar(S)函数长字符串变量S转为指针类型1.70 PosEx函数返回指针字符串Str2在Str1中第⼀个出现的地址1.71 Pos函数返回指针字符串Str2在Str1中第⼀个出现的地址1.72 QdStr(S) 返回字符串S在pascal中的表现形式1.73 QuotedStr函数返回字符串S在pascal中的表现形式1.74 RandomFrom(数组) 随机返回字符串数组数组中的⼀个元素1.75 ReverseString(串1) 返回字符串1的反序1.76 RightStr(串1, N) 返回字符串1右边的N个字符1.77 SameText(S1,S2) 返回两个字符串是否相等1.78 SearchBuf() 返回第⼀个搜索到的指针位置1.79 SetLength(S,n)过程设置字符串或动态数组长度1.80 SetString过程1.81 ShortString 长字符串转为短字符串1.82 Soundex(串1,N) 返回探测字符串1.83 SoundexCompare(串1,串2,N) 返回⽐较两个字符串的探测字符串的结果1.84 SoundexInt(串1,N) 返回探测整数1.85 SoundexProc(串1,串2) 返回两个字符串的探测字符串是否相同1.86 SoundexSimilar(串1,串2,N) 返回两个字符串的探测字符串是否相同1.87 SoundexWord(串1) 返回探测⽂字数值1.88 Spc 返回空格串1.89 StrCat函数连接两个指针字符串1.90 StrComp函数⽐较两个指针字符串1.91 StrCopy函数将指针字符串2复制到指针字符串1中1.92 StrECopy函数将⼀个串复制到另⼀个串并返回结果字符串尾部的指针1.93 StrEnd函数返回指向字符串尾部的指针1.94 StringOfChar函数1.95 StringReplace函数返回字符串1中⽤⼦串2替换成⼦串3的结果1.96 StrLCat函数将⼀串中的字符附加到另⼀串尾并返回合并的字符串1.97 StrLComp函数返回⽐较两个指针字符串指定长度1.98 StrLCopy函数将指针字符串2指定长度n复制到指针字符串1中1.99 StrLen函数返回字符串中的字符数1.100 StrLIComp函数以最⼤长度⽐较两个字符串(不区分⼤⼩写)1.101 StrLower函数返回字符串S的⼩写形式1.102 StrMove函数将指针串2指定内存数量n复制覆盖到指针串1中1.103 StrPCopy函数返回将指针字符串2复制到指针字符串1中1.104 StrPLCopy函数将字符串2指定长度n复制到指针字符串1中1.105 StrPos函数返回指针字符串Str2在Str1中第⼀个出现的地址1.106 StrRScan函数返回指针字符串Str2在Str1中最后⼀个出现的地址1.107 StrScan函数返回指针字符串Str2在Str1中第⼀个出现的地址1.108 StrToBool(S) 返回字符串S转换成逻辑值1.109 StrToBoolDef(S, Default) 返回字符串S转换成逻辑值1.110 StrToInt(S) 返回字符串S转换成整数1.111 StrToInt64(S) 返回字符串S转换成六⼗四位整数1.112 StrToInt64Def(S, Default) 返回字符串S转换成六⼗四位整数1.113 StrToIntDef(S,Default) 返回字符串S转换成整数1.114 StrToLines 单⾏⽂本转多⾏(’\n’转换⾏符)1.115 StrUpper函数返回字符串S的⼤写形式1.116 Str过程将数值转换为字符串1.117 StuffString(串1,K,N, 串2) 返回嵌套字符串1.118 StuffString函数返回嵌套字符串1.119 SwapStr 交换字串1.120 Trim(S) 返回除去字符串S左右不可见字符1.121 TrimLeft(S) 返回除去字符串S左边不可见字符1.122 TrimRight(S) 返回除去字符串S右边不可见字符1.123 TryStrToBool(S,outValue) 返回字符串S转换成逻辑值Value是否成功1.124 TryStrToInt(S,outValue) 返回字符串S转换成整数Value是否成功1.125 TryStrToInt64(S,outValue) 返回字串S转换成六⼗四位整数值是否成功1.126 UpperCase(S) 返回字符串S的⼤写形式1.127 Val过程将字符串转换为整型值1.128 VarArrayCreate([0,n],类型) 创建⼀个指定类型的数组1.129 VarArrayHighBound(Array,1) 返回数组上标1.130 VarArrayLowBound(Array,1) 返回数组下标1.131 VarArrayOf(S1,S2...Sn) 变量转数组1.132 VarType(vS) 返回变体类型的类型代码1.133 WideCompareStr(S1,S2) 返回⽐较两个双字节字符串1.134 WideCompareText(S1,S2) 返回⽐较两个双字节字符串1.135 WideLowerCase(S) 返回双字节字符串的⼩写形式1.136 WideSameStr(S1,S2) 返回两个双字节字符串是否相同1.137 WideSameText(S1,S2) 返回两个双字节字符串是否相同1.138 WideUpperCase(S) 返回双字节字符串的⼤写形式第2章数学计算函数2.1 Abs函数绝对值2.2 Ceil(const X:Extended):Integer 返回最⼩整数>=X,|X|2.3 CompareValue函数浮点数⽐较2.4 DivMod过程16位整数除法⼀次调⽤得出结果和余数2.5 EnsureRange函数范围切断函数2.6 Exp函数e的X次⽅(e=1.7314626)2.7 Floor(const X:Extended):Integer 返回最⼤整数<=X,|X|2.8 Frac函数返回参数的⼩数部分2.9 InRange函数范围测试函数2.10 Int函数取整2.11 IsZero函数零测试,若值为0(或者是⾮常⾮常接近于0)则返回真2.12 Ldexp函数返回X*2^P 2.13 Ln函数⾃然对数函数2.14 Log10函数常⽤对数函数2.15 Log2函数基数为2的X对数2.16 LogN函数基数为N的X对数2.17 Max函数最⼤值2.18 Min函数最⼩值2.19 Pi函数返回圆周率Pi2.20 Poly(const X:Extended;constCoefficients:arrayofDouble):Extended 计算⼀元多项式A[0]+A[1]*X+...+A[N]*X^N在变量X时的值2.21 Power函数指数函数:任意基数的任意幂2.22 Randomize 随机种⼦2.23Random[(Range:Integer)] 整数参数返回0<=Random(Range)2.24 RoundTo函数如Frac(X)<0.5则返回X否则返回X+1,其缺省凑整到1/1002.25 SameValue函数浮点数⽐较:两数是否相等2.26 Sign函数符号函数2.27 Sqr函数平⽅函数2.28 Sqrt函数平⽅根函数2.29 Trunc函数将实型值截取为整型值2.30 VarComplexAbs函数2.31 VarComplexAbsSqr函数2.32 VarComplexAngle函数第3章序数函数3.1 Inc过程参数⾃加3.2 Odd函数判断是否是奇数3.3 Ord函数返回⼀序数类型所对应的序数值3.4 Pred函数返回序数的前者3.6 Succ函数返回序数的后者3.5 Dec 函数参数⾃减第4章、三⾓函数4.1 ArcCos函数返回余弦函数的反函数值4.2 ArcCosh函数返回余弦函数的反函数值4.3 ArcCot函数返回余切函数的反函数值4.4 ArcCoth函数返回余切函数的反函数值4.5 ArcCsc函数返回余割函数的反函数值4.6 ArcCsch函数返回余割函数的反函数值4.7 ArcSec函数返回正割函数的反函数值4.8 ArcSech函数返回正割函数的反函数值4.9 ArcSin函数返回正弦函数的反函数值4.1 ArcSinh函数返回正弦函数的反函数值4.1 ArcTan函数返回正切函数的反函数值4.1 ArcTan2函数返回正切函数的反函数值4.1 ArcTanh函数返回正切函数的反函数值4.1 Cos函数返回余弦函数值4.2 CoseCant函数返回余割函数值4.2 Cosh函数返回余弦函数值4.2 Cot函数返回余切函数值4.2 Cotan函数返回余切函数值4.2 Csc函数返回余割函数值4.2 Csch函数返回余割函数值4.2 Hypot函数返回余弦函数值4.2 Sec函数返回正割函数值4.2 Secant函数返回正割函数值4.2 Sech函数返回正割函数值4.3 Sin函数返回正弦函数值4.3 SinCos函数返回正余弦函数值4.3 Sinh函数返回正弦函数值4.3 Tan函数返回正切函数值4.3 Tanh函数返回正切函数值4.3 Coth函数返回余割函数值第5章、统计函数5.1 MaxIntValue函数返回Integer数组中最⼤整数5.2 MaxValue函数返回Double数组最⼤数5.3 Max函数返回参数组最⼤数5.4 MeanAndStdDev过程在⼀次调⽤中计算算术平均值(Mean)和标准偏差(StdDev)5.5 Mean函数算术平均值5.6 MinIntValue函数返回Integer数组中最⼩整数5.7 MinValue函数返回Double数组中最⼩数5.8 Min函数返回参数组最⼩数5.9 MomentSkewKurtosis函数计算统计分解的核⼼因数5.10 Norm函数欧⼏⾥得L2-范数5.11 PopnStdDev函数总体标准差5.12 PopnVariance函数总体⽅差5.13 StdDev函数样本标准偏差5.14 SumInt函数求Integer数和5.15 SumOfSquares函数求Double平⽅和5.16 SumsAndSquares过程返回Double总和、平⽅和5.17 Sum函数求Double数的和5.18 TotalVariance函数⽅差总合5.19 Variance函数采样⽅差(样品⽅差)5.20 TrimInt(N,Min,Max:Integer):Integer 输出限制在Min..Max之间5.21 InBound(N,Min,Max:Integer):Boolean 输出是否在0..255之间第6章、⾦融函数6.1 InterestPayment函数利息收⼊(IPAYMT)6.2 FutureValue函数未来值(终值(FVAL))6.3 Payment函数6.4 PeriodPayment函数⽀付周期6.5 NetPresentValue函数现在净价值,纯现值(NPV),需要现⾦流数组6.6 InternalRateOfReturn函数内部盈利率(利润率) (IRR)需要现⾦流数组6.7 DoubleDecliningBalance函数6.8 SYDDepreciation函数折旧{Sum-of-Years-Digitsdepreciation(SYD)} 6.9 SLNDepreciation函数直线折旧{StraightLinedepreciation(SLN)} 6.10 PresentValue函数现值6.11 InterestRate 利率(IRATE)6.12 NumberOfPeriods 周期数{NumberofPeriods(NPER)}第7章、随机数函数7.1 RandG函数产⽣⼀个随机数,随机数符合正态分布Mean数附近,⽤于模拟数据抽取样品误差7.2 Random函数由“种⼦”初始化的随机数出发,开始产⽣随机数序列7.3 RandomFrom函数随机返回字符串数组AValues中的⼀个元素7.4 Randomize过程⽤当前机器时间作为随机数“种⼦”初始化随机数发⽣器7.5 RandomRange函数返回指定整数范围内的随机整数7.6 RandSeed函数随机数发⽣的“种⼦”第8章、单位换算函数8.1 CelsiusToFahrenheit函数8.2 CompatibleConversionType函数8.3 CompatibleConversionTypes函数8.4 Convert函数数据类型转换8.5 ConvertFrom函数数据类型转换8.6 ConvertTo函数数据类型转换8.7 ConvFamilyToDescription函数8.8 ConvTypeToDescription函数8.9 ConvTypeToFamily函数8.10 ConvUnitAdd函数8.11 ConvUnitCompareValue函数8.12 ConvUnitDec函数8.13 ConvUnitDiff函数8.14 ConvUnitInc函数8.15 ConvUnitSameValue函数8.16 ConvUnitToStr函数8.17 ConvUnitWithinNext函数8.18 ConvUnitWithinPrevious函数8.19 CycleToDeg函数圆周转度数8.20 CycleToRad函数圆周转弧度8.21 CycleToGrad函数圆周转梯度8.22 DateTimeToJulianDate函数8.23 DateTimeToModifiedJulianDate函数8.24 DateTimeToUnix函数8.25 DegToCycle函数度数转圆周8.26 DegToGrad函数度数转梯度8.27 DegToRad函数度数转弧度8.28 DescriptionToConvFamily函数8.29 DescriptionToConvType函数8.30 FahrenheitToCelsius函数8.31 GetConvFamilies过程8.32 GetConvTypes过程8.33 GradToCycle函数梯度转圆周8.34 GradToDeg函数梯度转度数8.35 GradToRad函数梯度转弧数8.36 JulianDateToDateTime函数8.37 RadToCycle函数弧度转圆周8.38 RadToDeg函数弧度转度数8.39 RadToGrad函数弧度转梯数8.40RaiseConversionError过程8.41 RegisterConversionFamily函数8.42 RegisterConversionType函数8.43 StrToConvUnit函数8.44 TryConvTypeToFamily函数8.45 TryJulianDateToDateTime函数8.46 TryModifiedJulianDateToDateTime函数8.47 TryStrToConvUnit函数8.48 UnixToDateTime函数8.49 UnregisterConversionFamily过程8.50 UnregisterConversionType过程第9章、⽇期函数9.1 CheckSqlTimeStamp过程9.2 CompareDateTime函数⽐较两个⽇期时间9.3 CompareDate函数⽐较两个⽇期9.4 CompareTime函数⽐较两个时间9.5 CurrentYear函数返回当前年份9.6 DateOf函数返回当前的⽇期的时间部分9.7 DateTimeToFileDate函数将DELPHI的⽇期格式转换为DOS的⽇期格式9.8 DateTimeToSQLTimeStamp函数返回当前的⽇期9.9 DateTimeToString过程将⽇期时间格式转换为字符串9.10 DateTimeToStr函数将⽇期时间格式转换为字符串9.11 DateTimeToSystemTime过程⽇期时间类型转换成系统时间类型9.12 DateTimeToTimeStamp函数返回当前的⽇期9.13 DateToStr函数将⽇期格式转换为字符串9.14 Date函数返回当前的⽇期9.15 DayOfTheMonth函数⼀⽉的第⼏天9.16 DayOfTheWeek函数⼀周的第⼏天9.17 DayOfTheYear函数⼀年的第⼏天9.18 DayOfWeek函数返回星期的数值9.19 DayOf函数返回⽇为⼀年的第⼏天9.20 DaysBetween函数两个⽇期的差距天数9.21 DaysInAMonth函数该⽉份的总天数9.22 DaysInAYear函数得到该年份的总天数9.23 DaysInMonth函数该⽉份的总天数9.24 DaysInYear函数得到该年份的总天数9.25 DaySpan函数能得到在天数上的差距9.26 DecodeDateDay过程递减变量值9.27 DecodeDateFully函数递减变量值9.28 DecodeDateMonthWeek过程递减变量值9.29 DecodeDateTime过程递减变量值9.30 DecodeDateWeek过程递减变量值9.31 DecodeDate过程将⽇期格式分解为年⽉⽇9.32 DecodeDayOfWeekInMonth过程递减变量值9.33 DecodeTime过程将时间格式分解为时、分、秒、毫秒9.34 EncodeDateDay函数将年⽉⽇合成为⽇期格式9.35 EncodeDateMonthWeek函数将年⽉⽇合成为⽇期格式9.36 EncodeDateTime函数将年⽉⽇合成为⽇期格式9.37 EncodeDateWeek函数将年⽉⽇合成为⽇期格式9.38 EncodeDate函数将年⽉⽇合成为⽇期格式9.39 EncodeDayOfWeekInMonth函数9.40 EncodeTime函数将时、分、秒、毫秒合成为时间格式9.41 EndOfADay函数每⽇的结束的时间9.42 EndOfAMonth函数每⽉的结束的时间9.43 EndOfAWeek函数每周的结束的时间9.44 EndOfAYear函数每年的结束的时间9.45 EndOfTheDay函数每⽇的结束的时间9.46 EndOfTheMonth函数每⽉的结束的时间9.47 EndOfTheWeek函数每周的结束的时间9.48 EndOfTheYear函数每年的结束的时间9.49 FormatDateTime函数⽤指定的格式来格式化⽇期和时间9.50 GetDay(Date:TDate):Integer 取⽇期天数分量9.51 GetHour(Time:TTime):Integer 取时间⼩时分量9.52 GetMinute(Time:TTime):Integer 取时间分钟分量9.53 GetMonth(Date:TDate):Integer 取⽇期⽉份分量9.54 GetMSecond(Time:TTime):Integer 取时间毫秒分量9.55 GetSecond(Time:TTime):Integer 取时间秒分量9.56 GetTime函数返回当前的时间9.57 GetYear(Date:TDate):Integer 取⽇期年份分量9.58 HourOfTheDay函数9.59 HourOfTheMonth函数9.60 HourOfTheWeek函数9.61 HourOfTheYear函数9.62 HourOf函数返回⼩时为⼀年的第⼏⼩时9.63 HoursBetween函数得到两个⽇期在⼩时上差距数9.64 HourSpan函数得到这两个时间在⼩时上的差数9.65 IncAMonth函数N个⽉后的⽇期9.66 IncDay函数N天后的⽇期9.67 IncHour函数N⼩时后的⽇期时间9.68 IncMilliSecond函数N个⽉后的⽇期9.69 IncMinute函数N分钟后的⽇期时间9.70 IncMonth函数N个⽉后的⽇期9.71 IncSecond函数N秒后的⽇期时间9.72 IncWeek函数N周后的⽇期9.73 IncYear函数N年后的⽇期9.74 IsInLeapYear函数9.75 IsLeapYear函数判断指定的年份是否是闰年9.76 IsPM函数判断指定时间是⽩天还是⿊夜9.77 IsSameDay函数判断是不是同⼀天9.78 IsToday函数判断是不是今天9.79 IsValidDateDay函数判断时间是否合法9.80 IsValidDateMonthWeek函数判断时间是否合法9.81 IsValidDateTime函数判断时间是否合法9.82 IsValidDateWeek函数判断时间是否合法9.83 IsValidDate函数判断时间是否合法9.84 IsValidTime函数判断时间是否合法9.85 MilliSecondOfTheDay函数9.86 MilliSecondOfTheHour函数9.87 MilliSecondOfTheMinute函数9.88 MilliSecondOfTheMonth函数9.89 MilliSecondOfTheSecond函数9.90 MilliSecondOfTheWeek函数9.91 MilliSecondOfTheYear函数9.92 MilliSecondOf函数9.93 MilliSecondsBetween函数9.94 MilliSecondSpan函数9.95 MinuteOfTheDay函数最⼩值9.96 MinuteOfTheHour函数最⼩值9.97 MinuteOfTheMonth函数最⼩值9.98 MinuteOfTheWeek函数最⼩值9.99 MinuteOfTheYear函数最⼩值9.100 MinuteOf函数最⼩值9.101 MinutesBetween函数得到两个⽇期在秒上差距数9.102 MinuteSpan函数得到两个⽇期在秒上差距数9.103 MonthOfTheYear函数得到该年份的该⽉份数9.104 MonthOf函数得到该年份的该⽉份数9.105 MonthsBetween函数得到两个⽇期在⽉份上差距数9.106 MonthSpan函数得到两个时间在⽉上的差数9.107 Now函数返回当前的⽇期和时间9.108 NthDayOfWeek函数9.109 RecodeDateTime函数修改⽇期时间9.110 RecodeDate函数修改⽇期9.111 RecodeDay函数修改⽇数9.112 RecodeHour函数修改⼩时数9.113 RecodeMilliSecond函数修改毫秒数9.114 RecodeMinute函数修改秒数9.115 RecodeMonth函数修改⽉份9.116 RecodeSecond函数修改分钟数9.117 RecodeTime函数修改时间9.118 RecodeYear函数修改年度9.119 ReplaceDate过程使⽤新⽇期替换原⽇期部分,但不改变时间部9.120 ReplaceTime过程使⽤新时间替换原时间部分,但不改变⽇期部9.121 SameDateTime函数返回两个⽇期时间是否相等9.122 SameDate函数返回两个⽇期是否相等9.123 SameTime函数返回两个时间是否相等9.124 SecondOfTheDay函数得到该⽇期的分钟数字9.125 SecondOfTheHour函数9.126 SecondOfTheMinute函数9.127 SecondOfTheMonth函数9.128 SecondOfTheWeek函数9.129 SecondOfTheYear函数9.130 SecondOf函数得到该⽇期的分钟数字9.131 SecondsBetween函数得到这两个时间在分钟上的差数9.132 SecondSpan函数得到这两个时间在分钟上的差数9.133 SQLDayOfWeek函数9.134 SQLTimeStampToDateTime函数9.135 SQLTimeStampToStr函数9.136 StartOfADay函数每⽇的开始的时间9.137 StartOfAMonth函数每⽉的开始的时间9.138 StartOfAWeek函数每周的开始的时间9.139 StartOfAYear函数每年的开始的时间9.140 StartOfTheDay函数每⽇的开始的时间9.141 StartOfTheMonth函数每⽉的开始的时间9.142 StartOfTheWeek函数每周的开始的时间9.143 StartOfTheYear函数每年的开始的时间9.144 StrToDateDef函数将数值转换为字符串9.145 StrToDateTimeDef函数将数值转换为字符串9.146 StrToDateTime函数将字符串转换为⽇期/时间格式9.147 StrToDate函数将字符串转换为⽇期格式9.148 StrToSQLTimeStamp函数将数值转换为字符串9.149 StrToTimeDef函数将数值转换为字符串9.150 StrToTime函数将字符串转换为时间格式9.151 SystemTimeToDateTime函数系统⽇期时间类型转换成PASICL⽇期时间类9.152 TimeOf函数返回当前的时间9.153 TimeStampToDateTime函数返回当前的时间9.154 TimeStampToMSecs函数返回当前的时间9.155 TimeToStr函数将时间格式转换为字符串9.156 Time函数返回当前的时间9.157 Today函数今天:得到当前⽇期9.158 Tomorrow函数明天:得到当前⽇期的后⼀天的⽇期9.159 TryEncodeDateDay函数将年⽉⽇合成为⽇期格式是否成功9.160 TryEncodeDateMonthWeek函数将年⽉⽇合成为⽇期格式是否成功9.161 TryEncodeDateTime函数将年⽉⽇合成为⽇期格式是否成功9.162 TryEncodeDateWeek函数将年⽉⽇合成为⽇期格式是否成功9.163 TryEncodeDate函数将年⽉⽇合成为⽇期格式是否成功9.164 TryEncodeDayOfWeekInMonth函数将年⽉⽇合成为⽇期格式是否成功9.165 TryEncodeTime函数将年⽉⽇合成为⽇期格式是否成功9.166 TryRecodeDateTime函数将年⽉⽇合成为⽇期格式是否成功9.167 TryStrToDateTime函数将年⽉⽇合成为⽇期格式是否成功9.168 TryStrToDate函数将年⽉⽇合成为⽇期格式是否成功9.169 TryStrToSQLTimeStamp函数将年⽉⽇合成为⽇期格式是否成功9.170 TryStrToTime函数将年⽉⽇合成为⽇期格式是否成功9.171 WeekOfTheMonth函数得到该星期为该⽉的第⼏个星期9.172 WeekOfTheYear函数得到该星期为⼀年的第⼏个星期9.173 WeekOf函数得到该星期为⼀年的第⼏个星期9.174 WeeksBetween函数得到这两个时间在星期上的差数9.175 WeeksInAYear函数得到在该年份中共包含多少个星期9.176 WeeksInYear函数得到在该年份中共包含多少个星期9.177 WeekSpan函数得到这两个时间在星期上的差数9.178 WithinPastDays函数判断两个时间差是否在⼀个指定范围内9.179 WithinPastHours函数判断两个时间差是否在⼀个指定范围内9.180 WithinPastMilliSeconds函数判断两个时间差是否在⼀个指定范围内9.181 WithinPastMinutes函数判断两个时间差是否在⼀个指定范围内9.182 WithinPastMonths函数判断两个时间差是否在⼀个指定范围内9.183 WithinPastSeconds函数判断两个时间差是否在⼀个指定范围内9.184 WithinPastWeeks函数判断两个时间差是否在⼀个指定范围内9.185 WithinPastYears函数判断两个时间差是否在⼀个指定范围内9.186 YearOf函数得到该⽇期的年份数字9.187 YearsBetween函数得到两个⽇期在年份上差距数9.188 YearSpan函数得到两个时间在年上的差数9.189 Yesterday函数昨天:得到当前⽇期的前⼀天的⽇期第10章、类型转换函数10.1 AnsiString 短字符串转为长字符串10.2 BinToHex过程将⼆进制数转换为⼗六进制数10.3 BoolToStr函数将布尔型逻辑值转换为字符串10.4 Bounds函数边框10.5 CompToCurrency函数将实数Comp型转换为货币Currency型数据10.6 CompToDouble函数将实数Comp型转换为双精度实数Double型数据10.24 CurrToStrF函数将货币型数转换为字符串10.23 CurrToStr函数将货币型数转换为字符串10.25 DoubleToComp过程将双精度实数Double型转换为实数Comp型数据10.8 HexToBin函数将⼗六进制数转换为⼆进制数10.7 OffsetRect函数通过应⽤⼀个指定的偏移,从⽽让矩形移动起来10.9 Pchar(S)函数长字符串变量S转为指针类型10.10 Point函数画点10.11 Rect函数画矩形10.12 ShortString 长字符串转为短字符串10.13 SmallPoint函数最⼩指针10.15 StrToBoolDef函数返回字符串S转换成逻辑值或默认值10.14 StrToBool函数返回字符串S转换成逻辑值10.19 StrToInt64Def函数返回字符串S转换成六⼗四位整数或默认值10.18 StrToInt64函数返回字符串S转换成六⼗四位整数10.17 StrToIntDef函数将字符串转换为整型或默认值10.16 StrToInt函数将字符串转换为整型10.20 TryStrToBool函数返回字符串S转换成逻辑值Value是否成功10.22 TryStrToInt64函数返回字串S转换成六⼗四位整数值是否成功10.21 TryStrToInt函数返回字符串S转换成整数Value是否成功10.26 FormatCurr函数格式化货币型数据10.27 IntToHex函数将整型数转换为⼗六进制数10.28 IntToStr函数将整型数转换为字符串10.29 VarArrayOf(S1,S2...Sn) 变量转数组10.30 VarType(vS) 返回变体类型的类型代码第11章、异常处理函数11.1 ExceptAddr 返回引起当前意外的地址11.2 ExceptObject函数返回当前意外的错误索引代码信息11.3 ExceptionErrorMessage函数返回当前意外的信息11.4 OutOfMemoryError 引起OutOfMemory意外11.5 RaiseLastOSError过程引起操作系统最后出错11.6 ShowException过程显⽰意外消息与地址11.7 SysErrorMessage函数返回系统意外的信息11.8 RaiseConversionError过程引起类型转换错误11.9 AcquireExceptionObject函数获得当前意外的错误索引代码信息11.10 DatabaseError过程返回数据库意外的错误索引代码信息11.11 DatabaseErrorFmt过程返回数据库意外的错误索引代码信息第12章、⽂件处理函数12.1 AddDirSuffix ⽬录尾加’\’修正12.2 Append过程以附加的⽅式打开已有的⽂件12.3 AppPath 应⽤程序路径12.4 AssignFile过程给⽂件变量赋⼀外部⽂件名12.5 AssignPrn函数将打印机赋给⼀个变量12.6 BlockRead过程读⼀个或多个记录到变量中12.7 BlockWrite过程从变量中写⼀个或多个记录12.8 ChangeFileExt函数改变⽂件的后缀12.9 ChDir过程改变当前⽬录12.10 CloseFile过程关闭打开的⽂件12.11 CreateBakFile 创建备份⽂件12.12 CreateDir函数建⽴⼀⼦⽬录12.13 DeleteFile函数删除⽂件12.14 Deltree 删除整个⽬录12.15 DirectoryExists函数检查⽬录是否存在12.16 DiskFree函数返回剩余磁盘空间的⼤⼩12.17 DiskSize函数返回指定磁盘的容量12.18 Eof函数对有类型或⽆类型⽂件测试是否到⽂件尾12.19 Eoln函数返回⽂本⽂件的⾏结束状态12.20 Erase过程删除外部⽂件12.21 ExcludeTrailingBackslash函数12.22 ExcludeTrailingPathDelimiter12.23 ExpandFileName函数返回不包含绝对路径的⽂件名字符串12.24 ExpandUNCFileName函数从⽹络上返回不包含绝对路径的⽂件名字符串12.25 ExtractFileDir函数返回驱动器和路径12.26 ExtractFileDrive函数返回驱动器12.27 ExtractFileExt函数返回⽂件的后缀12.28 ExtractFileName函数返回⽂件名12.29 ExtractFilePath函数返回指定⽂件的路径12.30 ExtractRelativePath函数返回指定远程⽂件的路径12.31 ExtractShortPathName函数返回指定⽂件短的路径12.32 FileAge函数返回⽂件已存在的时间12.33 FileClose过程关闭指定的⽂件12.34 FileCreate函数⽤指定的⽂件名建⽴新⽂件12.35 FileDateToDateTime函数将DOS的⽇期格式转换为Delphi的⽇期格式12.36 FileExists函数检查⽂件是否存在12.37 FileGetAttr函数获取⽂件属性12.38 FileGetDate函数返回⽂件的编修⽇期12.39 FileIsReadOnly函数返回⽂件的是否是只读12.40 FileOpen函数⽤指定的存取模式打开指定的⽂件12.41 FilePos函数返回⽂件的当前指针位置12.42 FileProperties 打开⽂件属性窗⼝12.43 FileRead函数从指定的⽂件读取12.44 FileSearch函数在⽬录中搜索指定的⽂件12.45 FileSeek函数改变⽂件指针的当前位置12.46 FileSetAttr函数设置⽂件属性12.47 FileSetDate函数设置⽂件的DOS⽇期时间标记12.48 FileSetReadOnly函数设置⽂件为只读属性12.49 FileSize函数返回当前⽂件的⼤⼩12.50 FileTimeToLocalSystemTime ⽂件时间转本地时间12.51 FileWrite函数对指定的⽂件做写操作12.52 FindClose过程终⽌FindFirst/FindNext序列12.53 FindFile 查找指定⽬录下⽂件12.54 FindFirst函数搜索⽬录下的第⼀个⽂件,并创建内存空间使⽤12.55 FindNext函数返回与⽂件名及属性匹配的下⼀个⽂件12.56 Flush函数将缓冲区的内容刷新到输出的⽂本⽂件中12.57 ForceDirectories函数建⽴⼀⼦⽬录,若⽗⽬录不存在⾃动创建⽗⽬录12.58 GetCurrentDir函数获取当前⽬录12.59 GetDirFiles 取⽂件夹⽂件数12.60 GetDir过程返回指定驱动器的当前⽬录12.61 GetFileIcon 取得与⽂件相关的图标,成功返回True12.62 GetRelativePath 取两个⽬录的相对路径,注意串尾不能是’\’字符12.63 GetWindowsDir 取Windows系统⽬录12.64 GetWinTempDir 取临时⽂件⽬录12.65 IncludeTrailingBackslash函数12.66 IncludeTrailingPathDelimiter12.67 IOResult函数返回最新的I/O操作完成状态12.68 IsFileInUse 判断⽂件是否正在使⽤12.69 IsPathDelimiter函数12.70 LocalSystemTimeToFileTime 本地时间转⽂件时间12.71 MakePath ⽬录尾加’\’修正12.72 MatchesMask函数12.73 MinimizeName函数12.74 MkDir过程建⽴⼀⼦⽬录12.75 MoveFile 移动⽂件、⽬录,参数为源、⽬标名12.76 OpenDialog 打开⽂件对话框12.77 OpenWith ⽂件打开⽅式12.78 procedure 查找指定⽬录下⽂件的回调函数12.79 ProcessPath过程12.80 ReadLn过程⽂本⽂件,读⼀⾏到⼀个变量中12.81 Read过程对有格式的⽂件,读⼀⽂件组件到变量中; ⽂本⽂件,读⼀个或多个值到⼀个或多12.82 RemoveDir函数删除⼀个不包含⽂件的⽬录12.83 RenameFile函数对⽂件重命名12.84 Rename过程重命名外部⽂件12.85 Reset过程打开已有的⽂件12.86 Rewrite过程建⽴并打开⼀新的⽂件12.87 RmDir过程删除空的⼦⽬录12.88 RunFile 运⾏⼀个⽂件12.89 SeekEof函数返回⽂件的⽂件结束状态12.90 SeekEoln函数返回⽂件的⾏结束状态12.91 Seek过程将⽂件的当前指针移动到指定的组件上12.92 SetCurrentDir函数设置当前⽬录12.93 SetLineBreakStyle过程设置⾏中断的类型12.94 SetTextBuf过程给⽂本⽂件指定I/O缓冲区12.95 Truncate过程截去当前⽂件位置后的内容12.96 WinExecAndWait32 运⾏⼀个⽂件并等待其结束12.97 Write(for text files)过程向⽂本⽂件,写⼀个或多个值12.98 Write(for typed files)过程向格式⽂件写⼊信息12.99 WriteLn过程向⽂本⽂件,写⼀⾏第13章、图形计算与处理函数13.1 CharsetToIdent函数13.2 ColorToIdent函数13.3 ColorToRGB函数13.4 ColorToString函数13.5 CreateGrayMappedBmp函数13.6 CreateMappedBmp函数13.7 DrawButtonFace函数13.8 Frame3D过程13.9 GetCharsetValues过程13.10 GetColorValues过程13.11 GetDefFontCharSet函数13.12 GraphicExtension函数13.13 GraphicFilter函数13.14 MoveWindowOrg过程13.15 StringToColor函数13.16 CenterPoint函数13.17 IntersectRect函数13.18 InvalidPoint函数13.19 IsRectEmpty函数13.20 PointsEqual函数13.21 PtInRect函数13.22 UnionRect函数13.23 BitToAry(Image) 图⽚转换字符串赋值到F变量第14章格式化函数14.1 Format函数格式化⼀系列的参数,Format(‘XND=‘+’’’%S’’’,[IntToStr(y)])14.2 FmtStr函数格式化⼀系列的参数,其结果以参数Result返回14.3 StrFmt函数格式化⼀系列的参数14.4 StrLFmt函数格式化⼀系列的参数,并将结果指向⽬标缓冲区的指针14.5 FormatBuf函数格式化⼀系列的参数14.6 WideFormat函数14.7 WideFmtStr函数14.8 WideFormatBuf函数14.9 FormatFloat函数指定浮点数格式14.10 FormatCurr函数指定货币数格式14.11 FormatDateTime函数⽤指定的格式来格式化⽇期和时间,如:FormatDateTime(‘yyyy’’年’’mm’’⽉’’dd’’⽇’,ksrq)或FormatdateTime(‘dddddd’,now)FormatDateTime(‘hh’’时’’mm’’分’’ss’’秒’,now)14.12 FormatPath(Path,Width) 缩短显⽰不下的长路径名14.13 LongTimeFormat全局变量长⽇期格式14.14 ShortDateFormat全局变量短⽇期格式第15章、对话框函数15.1 CreateMessageDialog函数15.2 InputBox函数InputBox(‘标题’,’提⽰’,’默认值’)15.3 InputQuery函数15.4 IsAbortResult函数15.5 IsAnAllResult函数15.6 IsNegativeResult函数15.7 IsPositiveResult函数15.8 LoginDialog函数15.9 LoginDialogEx函数15.10 MessageBox函数MessageBox(窗⼝名/Handle,’提⽰’,’标题’,’信息类别’) 15.11 MessageDlg函数MessageDlg(‘提⽰’,类型,按钮类别,帮助句柄0)15.12 MessageDlgPos函数15.13 MessageDlgPosHelp函数15.14 PromptForFileName函数15.15 RegisterFilePreviewer过程15.16 RemoteLoginDialog函数15.17 SelectDirectory函数15.18 ShowMessage过程ShowMessage(‘提⽰’) 15.19 ShowMessageFmt过程15.20 ShowMessagePos过程15.21 StripAllFromResult函数15.22 UnregisterFilePreviewer过15.23 ForceCurrentDirectory过程15.24 InfoDlg 显⽰提⽰窗⼝15.25 InfoOk 显⽰提⽰确认窗⼝15.26 ErrorDlg 显⽰错误窗⼝15.27 WarningDlg 显⽰警告窗⼝15.28 QueryDlg 显⽰查询是否窗⼝第16章、打印机函数16.1 Printer函数打印机16.2 SetPrinter函数设置打印机第17章、COM实⽤函数17.1 CreateClassID函数17.2 CreateOleObject函数17.3 EnumDispatchProperties过程17.4 GetDispatchPropValue函数17.5 SetDispatchPropValue过程17.6 OleCheck过程17.7 ProgIDToClassID函数17.8 ClassIDToProgID函数17.9 ComClassManager函数17.10 CreateComObject函数17.11 CreateOleObject函数17.12 CreateRegKey过程17.13 CreateRemoteComObject函数17.14 CreateSharedPropertyGroup函数17.15 CreateSharedPropertyGroupManager函数17.16 DeleteRegKey过程17.17 DLLCanUnloadNow函数17.18 DLLGetClassObject函数17.19 DllRegisterServer函数17.20 DllUnregisterServer函数17.21 EnumDispatchproperties过程17.22 FontToOleFont函数17.23 GetActiveOleObject函数17.24 GetDispatchpropValue函数17.25 GetOleFont过程17.26 GetOlePicture过程17.27 GetOleStrings过程17.28 GetRegStringValue函数17.29 InterfaceConnect过程17.30 InterfaceDisconnect过程17.31 OleCheck过程17.32 OleError过程17.33 OleFontToFont过程17.34 OleStrToString函数17.35 OleStrToStrVar过程17.36 ParkingWindow函数17.37 ProglDToClassID函数17.38 RegisterComServer过程17.39 SafeRef函数17.40 SetDispatchPropValue过程17.41 SetOleFont过程17.42 SetOlePicture过程17.43 SetOleStrings过程17.44 StringToOleStr函数17.45 Supports函数第18章、窗⼝控制实⽤程序18.1 CheckToolMenuDropdown过程18.2 FindControl函数18.3 GetComCtlVersion函数18.4 GetParentForm函数18.5 SendAppMessage函数第19章、菜单函数19.1 AnsiSameCaption函数19.2 GetHotKey函数19.3 NewItem函数19.4 NewLine函数19.5 NewMenu函数19.6 NewPopupMenu函数19.7 NewSubMenu函数19.8 ShortCut函数19.9 ShortCutToKey过程19.1 ShortCutToText函数19.11 StripHotKey函数19.12 TextToShortCut函数19.13 WideSameCaption函数19.14 ValidmenuHotKeys函数第20章、向后兼容例程20.1 AddExitProc过程将⼀过程添加到运⾏时库的结束过程表中20.2 AppendStr过程在字符串P后追加字符串S20.3 AssignStr过程将字符串S更新给字符串指针P20.4 Close过程关闭⽂件20.5 DisposeStr过程释放字符串在堆栈中的内存空间20.6 ExitCode变量离开代码块20.7 LoadStr函数从应⽤程序的可执⾏⽂件中装载字符资源20.8 NewStr函数在堆栈上分配新的字符串20.9 StrAlloc函数给以NULL结束的字符串分配最⼤长度-1的缓冲区20.10 StrBufSize函数返回存储在由StrAlloc分配的字符缓冲区的最⼤字符数20.11 StrDispose过程释放堆栈上的字符串20.12 StrNew函数在堆栈上分配⼀个字符串20.13 StrPas函数将以NULL结束的字符串转换为PASCAL类的字符串20.14 Swap函数交换参数的⾼低地址位第21章、⾏为⽀持函数与过程21.1 CreateAction函数创建⼀个动作21.2 EnumRegisteredActions过程注册⼀个动作21.3 RegisterActions过程注册⼀个动作21.4 UnRegisterActions过程取消注册的⼀个动作第22章、Windows剪贴板函数22.1 Clipboard函数剪贴板函数22.2 SetClipboard函数设置剪贴板函数第23章、流程控制23.1 Abort 引起放弃的意外处理23.2 Break 终⽌for、while、repeat循环语句23.3 Continue 继续for、while、repeat的下⼀个循环23.4 Exit ⽴即从当前的语句块中退出23.5 RunError 停⽌程序的执⾏23.6 Halt 停⽌程序的执⾏并返回到操作系统23.7 Application.Terminate 停⽌程序的执⾏并返回到操作系统第24章、指针相关函数24.1 Addr(X):Pointer 返回指定对象的地址24.2 Assigned(var P):Boolean 测试函数或过程变量是否为空24.3 Cseg:Word 返回CS程序段缓存器的内容24.4 Dseg:Word 返回DS程序段缓存器的内容24.5 FreeAndNil24.6 Ofs(X):Word 返回参数的偏移地址24.7 Ptr(Seg,Ofs:Word):Pointer 将所指定的节段及偏移地址组合到⼀个指针24.8 Seg(X):Word 返回参数的节段地址。
Delphi_Api函数

WNetAddConnectionWNetAddConnection2WNetAddConnection3WNetCancelConnectionWNetCancelConnection2WNetCloseEnumWNetConnectionDialogWNetDisconnectDialogWNetEnumResourceWNetGetConnectionWNetGetLastErrorWNetGetUniversalNameWNetGetUserWNetOpenEnumBroadcastSystemMessageGetMessagePosGetMessageTimePostMessagePostThreadMessageRegisterWindowMessageReplyMessageSendMessageSendMessageCallbackSendMessageTimeoutSendNotifyMessageCloseHandleCompareFileTimeCopyFileCreateDirectoryCreateFileCreateFileMappingDeleteFileDeviceIoControlDosDateTimeToFileTimeFileTimeToDosDateTimeFileTimeToLocalFileTime 将一个FILETIME结构转换成本地时间 FileTimeToSystemTime 根据一个FILETIME结构的内容,装载一个SYSTEMTIME结构FindClose 关闭由FindFirstFile函数创FindFirstFile 根据文件名查找文件FindNextFile 根据调用FindFirstFile函数时指定的一个文件名查找下一个文件FlushFileBuffers 针对指定的文件句柄,刷新内部文件缓冲区FlushViewOfFile 将写入文件映射缓冲区的所有数据都刷新到磁盘GetBinaryType 判断文件是否可以执行GetCompressedFileSize 判断一个压缩文件在磁盘上实际占据的字节数GetCurrentDirectory 在一个缓冲区中装载当前目录GetDiskFreeSpace 获取与一个磁盘的组织有关的信息,以及了解剩余空间的容量 GetDiskFreeSpaceEx 获取与一个磁盘的组织以及剩余空间容量有关的信息GetDriveType 判断一个磁盘驱动器的类型GetExpandedName 取得一个压缩文件的全名GetFileAttributes 判断指定文件的属性GetFileInformationByHandle 这个函数提供了获取文件信息的一种机制GetFileSize 判断文件长度GetFileTime 取得指定文件的时间信息GetFileType 在给出文件句柄的前提下,判断文件类型GetFileVersionInfo 从支持版本标记的一个模块里获取文件版本信息GetFileVersionInfoSize 针对包含了版本资源的一个文件,判断容纳文件版本信息需要一个多大的缓冲GetFullPathName 获取指定文件的完整路径名GetLogicalDrives 判断系统中存在哪些逻辑驱动器字母GetLogicalDriveStrings 获取一个字串,其中包含了当前所有逻辑驱动器的根驱动器路径 GetOverlappedResult 判断一个重叠操作当前的状态GetPrivateProfileInt 为初始化文件(.ini文件)中指定的条目获取一个整数值 GetPrivateProfileSection 获取指定小节(在.ini文件中)所有项名和值的一个列表 GetPrivateProfileString 为初始化文件中指定的条目取得字串GetProfileInt 取得win.ini初始化文件中指定条目的一个整数值GetProfileSection 获取指定小节(在win.ini文件中)所有项名和值的一个列表GetProfileString 为win.ini初始化文件中指定的条目取得字串GetShortPathName 获取指定文件的短路径名GetSystemDirectory 取得Windows系统目录(即System目录)的完整路径名GetTempFileName 这个函数包含了一个临时文件的名字,它可由应用程序使用GetTempPath 获取为临时文件指定的路径GetVolumeInformation 获取与一个磁盘卷有关的信息GetWindowsDirectory 获取Windows目录的完整路径名hread 参考lreadhwrite 参考lwrite函数lclose 关闭指定的文件lcreat 创建一个文件llseek 设置文件中进行读写的当前位置LockFile 锁定文件的某一部分,使其不与其他应用程序共享LockFileEx 与LockFile相似,只是它提供了更多的功能lopen 以二进制模式打开指定的文件lread 将文件中的数据读入内存缓冲区lwrite 将数据从内存缓冲区写入一个文件LZClose 关闭由LZOpenFile 或 LZInit函数打开的一个文件LZCopy 复制一个文件LZInit 这个函数用于初始化内部缓冲区LZOpenFile 该函数能执行大量不同的文件处理,而且兼容于压缩文件LZRead 将数据从文件读入内存缓冲区LZSeek 设置一个文件中进行读写的当前位置MapViewOfFile 将一个文件映射对象映射到当前应用程序的地址空间MoveFile 移动文件OpenFile 这个函数能执行大量不同的文件操作OpenFileMapping 打开一个现成的文件映射对象QueryDosDevice 在Windows NT中,DOS设备名会映射成NT系统设备名。
delphiAPI设备场景函数

CombineTransform 驱动世界转换。它相当于依顺序进行两次转换
CreateCompatibleDC 创建一个与特定设备场景一致的内存设备场景
CreateDC 为专门设备创建设备场景
CreateEllipticRgn 创建一个椭圆
ExcludeUpdateRgn 从专用设备场景剪裁区去掉指定窗口的刷新区域
ExtCreateRegion 根据世界转换修改区域
ExtSelectClipRgn 将指定区域组合到设备场景的当前剪裁区
FillRgn 用指定刷子填充指定区域
FrameRgn 用指定刷子围绕指定区域画一个外框
InvalidateRgn 使窗口指定区域不活动,并将它加入窗口刷新区,使之可随后被重画
InvertRgn 通过颠倒每个像素值反转设备场景指定区域
LPtoDP 将点阵从指定设备场景逻辑坐标转换为设备坐标
ModifyWorldTransform 根据指定的模式修改世界转换
OffsetClipRgn 按指定量平移设备场景剪裁区
OffsetRgn 按指定偏移量平移指定区域
OffsetViewportOrgEx 平移设备场景视口区域
OffsetWindowOrgEx 平移指定设备场景窗口起点
PaintRgn 用当前刷子背景色填充指定区域
PtInRegion 确定点是否在指定区域内
PtVisible 确定指定点是否可见(即,点是否在设备场景剪裁区内)
RectInRegion 确定矩形是否有部分在指定区域内
RectVisible 确定指定矩形是否有部分可见(是否在设备场景剪裁区内)
API 图像函数(delphi)

WinAPI: ExtractIcon - 获取EXE、DLL 或ICO 文件中的图标//声明:ExtractIcon(hInst: HINST; {调用函数的程序实例}lpszExeFileName: PChar; {文件路径; 文件可以是 *.exe、*.dll、*.ico}nIconIndex: UINT {图标索引}): HICON; {返回图标句柄; 索引为 0 时返回第一个图标句柄; 索引为 #FFFFFFFF 时返回图标总数}//举例:unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls;typeTForm1 = class(TForm)Button1: TButton;procedure Button1Click(Sender: TObject);end;varForm1: TForm1;implementation{$R *.dfm}uses ShellAPI; {ExtractIcon 在其中声明}procedure TForm1.Button1Click(Sender: TObject);varico: TIcon;i,count,x,y,w,h: Integer;FilePath: string;begin{随便找了个路径, 如果缺失会退出}FilePath := 'C:\Program Files\Macromedia\Fireworks 8\Fireworks.exe';if not FileExists(FilePath) then begin ShowMessage('文件不存在'); Exit; en d;ico := TIcon.Create;x := 10; y := 10; w := 0; h := 0;Repaint;{先算出文件内的图标总数}count := ExtractIcon(HInstance, PChar(FilePath), HICON(-1));for i := 0to count - 1dobegin{循环提取图标}ico.Handle := ExtractIcon(HInstance, PChar(FilePath), i);{画出图标}Canvas.Draw(x,y,ico);{下面只是调整显示位置}if w < ico.Width then w := ico.Width;if h < ico.Height then h := ico.Height;x := x + ico.Width + 10;if x >= ClientWidth - w thenbeginunit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, ComCtrls;typeTForm1 = class(TForm)TrackBar1: TTrackBar;procedure FormCreate(Sender: TObject);procedure FormPaint(Sender: TObject);procedure TrackBar1Change(Sender: TObject);procedure FormDestroy(Sender: TObject);end;varForm1: TForm1;implementation{$R *.dfm}varBit,BitBack: TBitmap;Transparency: Byte = 255; {透明度}procedure TForm1.FormCreate(Sender: TObject);begin{设定窗体背景}BitBack := TBitmap.Create;BitBack.LoadFromFile('c:\temp\Back.bmp');Brush.Bitmap := BitBack;{调入图片}Bit := TBitmap.Create;Bit.LoadFromFile('c:\temp\test.bmp');{给 TrackBar1 初始化}TrackBar1.Max := 255;TrackBar1.Min := 0;TrackBar1.ShowSelRange := False;TrackBar1.Position := TrackBar1.Max;end;procedure TForm1.FormPaint(Sender: TObject);varBlend: TBlendFunction; {定义 AlphaBlend 要使用的 TBlendFunction 结构}begin{给 TBlendFunction 结构赋值}Blend.BlendOp := AC_SRC_OVER;Blend.BlendFlags := 0;Blend.AlphaFormat := 0;Blend.SourceConstantAlpha := Transparency;Windows.AlphaBlend(Canvas.Handle, {因 VCL 有同名属性, 所以指定了是来自 Windows 单元}10,10,Bit.Width + 10,Bit.Height + 10,Bit.Canvas.Handle,0,0,Bit.Width,Bit.Height,Blend);end;Ellipse(MetaFileDC, 10, 10, 100, 60);HMetaFile := CloseEnhMetaFile(MetaFileDC);{在窗体上按原始大小绘制 EMF}PlayEnhMetaFile(Canvas.Handle, HMetaFile, Rect(10,10,100,60));DeleteObject(MetaFileDC);DeleteEnhMetaFile(HMetaFile);end;end.用GDI 操作EMF 文件[3]: GetEnhMetaFileunit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;typeTForm1 = class(TForm)Button1: TButton;procedure Button1Click(Sender: TObject);end;varForm1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);constPath = 'C:\Temp\MyMetaFile.emf'; {假定这个文件还在}TForm1 = class(TForm)Button1: TButton;procedure FormCreate(Sender: TObject);procedure FormDestroy(Sender: TObject);procedure FormMouseDown(Sender: TObject; Button: TMouseButton;Shift: TShiftState; X, Y: Integer);procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integ er);procedure FormMouseUp(Sender: TObject; Button: TMouseButton;Shift: TShiftState; X, Y: Integer);procedure Button1Click(Sender: TObject);end;varForm1: TForm1;implementation{$R *.dfm}varHMetaFile: HENHMETAFILE;f: Boolean;x1,y1: Integer;R: TRect;procedure TForm1.FormCreate(Sender: TObject);constPath = 'C:\Temp\MyMetaFile.emf';beginHMetaFile := GetEnhMetaFile(PChar(Path));end;procedure TForm1.FormDestroy(Sender: TObject);beginDeleteEnhMetaFile(HMetaFile);end;Left = 0Top = 0Caption = 'Form1'ClientHeight = 206ClientWidth = 339Color = clBtnFaceFont.Charset = DEFAULT_CHARSETFont.Color = clWindowTextFont.Height = -11 = 'Tahoma'Font.Style = []OldCreateOrder = FalsePosition = poDesktopCenterOnCreate = FormCreateOnDestroy = FormDestroyOnMouseDown = FormMouseDownOnMouseMove = FormMouseMoveOnMouseUp = FormMouseUpPixelsPerInch = 96TextHeight = 13object Button1: TButtonLeft = 256Top = 173Width = 75Height = 25Caption = 'Button1'TabOrder = 0OnClick = Button1Clickendend用GDI 操作EMF 文件[5]: GetEnhMetaFileDescription - 获取EMF 文件的说明文本再用CreateEnhMetaFile 函数建立EMF 文件时可以同时写入描述性说明;用GetEnhMetaFileDescription 函数可以读出EMF 文件的说明文本.本例给的说明文本非常简单, 不过标准的说明文本的格式应该是: 程序名#0文件标题#0#0unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;typeTForm1 = class(TForm)Button1: TButton;Button2: TButton;procedure FormCreate(Sender: TObject);procedure FormDestroy(Sender: TObject);procedure Button1Click(Sender: TObject);procedure Button2Click(Sender: TObject);end;varForm1: TForm1;implementation{$R *.dfm}varHMetaFile: HENHMETAFILE; {EMF 文件句柄}{建立带说明的 EMF 文件}procedure TForm1.FormCreate(Sender: TObject);constPath = 'C:\Temp\MyMeateFile.emf';Description = 'ABCDE'; {当作 EMF 文件的说明}varMetaFileDC: HDC;begin{建立并写入说明}MetaFileDC := CreateEnhMetaFile(0, PChar(Path), nil, PChar(Description)); {绘图}Rectangle(MetaFileDC, 11, 11, 111, 111);{结束编辑、保存文件, 并返回文件句柄}HMetaFile := CloseEnhMetaFile(MetaFileDC);{删除 DC}DeleteObject(MetaFileDC);end;{读取 EMF 文件的说明}procedure TForm1.Button1Click(Sender: TObject);varDescriptionSize: Integer; {说明段的大小}DescriptionBuf: PChar; {接受说明的内存指针}begin{获取大小}DescriptionSize := GetEnhMetaFileDescription(HMetaFile, 0, nil);{分配内存}GetMem(DescriptionBuf, DescriptionSize);{获取说明}GetEnhMetaFileDescription(HMetaFile, DescriptionSize, DescriptionBuf); {显示说明}ShowMessage(DescriptionBuf); {ABCDE}{释放内存}FreeMem(DescriptionBuf);end;{绘制在窗体}procedure TForm1.Button2Click(Sender: TObject);beginPlayEnhMetaFile(Canvas.Handle, HMetaFile, Rect(11,11,111,111));end;{删除 EMF 文件句柄}procedure TForm1.FormDestroy(Sender: TObject);beginDeleteEnhMetaFile(HMetaFile);end;end.用GDI 操作EMF 文件[6]: GetEnhMetaFileHeader - 获取EMF 的头文件//增强图元文件的头文件结构 TEnhMetaHeader:tagENHMETAHEADER = packed recordiType: DWORD; {记录类型}nSize: DWORD; {结构大小}rclBounds: TRect; {外接矩形(单位是像素)}rclFrame: TRect; {图片矩形(单位是 0.1 毫米)}dSignature: DWORD; {文件签名}nVersion: DWORD; {文件版本}nBytes: DWORD; {文件尺寸}nRecords: DWORD; {记录数}nHandles: Word; {句柄数}sReserved: Word; {保留}nDescription: DWORD; {说明文本的长度}offDescription: DWORD; {说明文本的偏移量}procedure FormDestroy(Sender: TObject);procedure Button1Click(Sender: TObject);procedure Button2Click(Sender: TObject);end;varForm1: TForm1;implementation{$R *.dfm}varHMetaFile: HENHMETAFILE; {EMF 文件句柄}{建立带说明的 EMF 文件}procedure TForm1.FormCreate(Sender: TObject);constPath = 'C:\Temp\MyMeateFile.emf';Description = 'ABCDE'; {当作 EMF 文件的说明}varMetaFileDC: HDC;begin{建立并写入说明}MetaFileDC := CreateEnhMetaFile(0, PChar(Path), nil, PChar(Description)); {绘图}Rectangle(MetaFileDC, 11, 11, 111, 111);{结束编辑、保存文件, 并返回文件句柄}HMetaFile := CloseEnhMetaFile(MetaFileDC);{删除 DC}DeleteObject(MetaFileDC);end;procedure TForm1.Button1Click(Sender: TObject);constn = #13#10;varMetaHeaderSize: Integer; {文件头大小}MetaHeader: PEnhMetaHeader; {文件头结构的指针}str: string;buf: array[Word] of Char;beginMetaHeaderSize := GetEnhMetaFileHeader(HMetaFile, 0, nil);GetMem(MetaHeader, MetaHeaderSize);GetEnhMetaFileHeader(HMetaFile, MetaHeaderSize, MetaHeader);str := 'iType: %d' + n +'nSize: %d' + n +'rclBounds: %d,%d,%d,%d' + n +'rclFrame: %d,%d,%d,%d' + n +'dSignature: %d' + n +'nVersion: %d' + n +'nBytes: %d' + n +'nRecords: %d' + n +'nHandles: %d' + n +//'sReserved: %d' + n +'nDescription: %d' + n +'offDescription: %d' + n +'nPalEntries: %d' + n +'szlDevice: %d,%d' + n +'szlMillimeters: %d,%d' + n +'cbPixelFormat: %d' + n +'offPixelFormat: %d' + n +'bOpenGL: %d';wvsprintf(buf, PChar(str), PChar(MetaHeader));ShowMessage(buf);FreeMem(MetaHeader);end;{绘制在窗体}procedure TForm1.Button2Click(Sender: TObject);beginPlayEnhMetaFile(Canvas.Handle, HMetaFile, Rect(11,11,111,111));end;{删除 EMF 文件句柄}procedure TForm1.FormDestroy(Sender: TObject);beginDeleteEnhMetaFile(HMetaFile);end;end.用GDI 操作EMF 文件[7]: EnumEnhMetaFile、PlayEnhMetaFileRecord - 枚举文件中的图形命令EnumEnhMetaFile(DC: HDC; {目标设备句柄; 如果回调函数不需要回放, 该参数为 0}Emf: HENHMETAFILE; {图元文件句柄}EnhMetaFunc: TFNEnhMFEnumProc; {回调函数指针; 回调函数格式见下}Data: Pointer; {自定义数据指针}const Rect: TRect {要输出的尺寸; 如果 DC=0 该参数会被忽略}): BOOL;//EnumEnhMetaFile 使用的回调函数格式及参数, PlayEnhMetaFileRecord 基本就是使用这些参数:function EnhMetaFunc(DisplaySurface: HDC; {目标设备句柄; 如果回调函数不需要回放, 该参数为 0}var MetafileTable: THandleTable; {句柄表数组指针, 数组包含 HGDIOBJ 对象(画var MetafileRecord: TEnhMetaRecord; {图元文件记录 TEnhMetaRecord 指针, TEnhM etaRecord 结构见下表}ObjectCount: Integer; {对象句柄数目, 即句柄表 MetafileTable 中图形对象的数目}var Data: Longint {自定义数据指针}): Integer; stdcall;//TEnhMetaRecord 结构:tagENHMETARECORD = packed recordiType: DWORD; {类型}nSize: DWORD; {尺寸}dParm: array[0..0] of DWORD; {参数数组}end;//TEnhMetaRecord.iType 的可能值:EMR_HEADER = 1;EMR_POLYBEZIER = 2;EMR_POLYGON = 3;EMR_POLYLINE = 4;EMR_POLYBEZIERTO = 5;EMR_POLYLINETO = 6;EMR_POLYPOLYLINE = 7;EMR_POLYPOLYGON = 8;EMR_SETWINDOWEXTEX = 9;EMR_SETWINDOWORGEX = 10;EMR_SETVIEWPORTEXTEX = 11;EMR_SETVIEWPORTORGEX = 12;EMR_SETBRUSHORGEX = 13;EMR_EOF = 14;EMR_SETPIXELV = 15;EMR_SETMAPPERFLAGS = $10;EMR_SETMAPMODE = 17;EMR_SETSTRETCHBLTMODE = 21; EMR_SETTEXTALIGN = 22; EMR_SETCOLORADJUSTMENT = 23; EMR_SETTEXTCOLOR = 24; EMR_SETBKCOLOR = 25; EMR_OFFSETCLIPRGN = 26; EMR_MOVETOEX = 27; EMR_SETMETARGN = 28; EMR_EXCLUDECLIPRECT = 29; EMR_INTERSECTCLIPRECT = 30; EMR_SCALEVIEWPORTEXTEX = 31; EMR_SCALEWINDOWEXTEX = 32; EMR_SAVEDC = 33; EMR_RESTOREDC = 34; EMR_SETWORLDTRANSFORM = 35; EMR_MODIFYWORLDTRANSFORM = 36; EMR_SELECTOBJECT = 37; EMR_CREATEPEN = 38; EMR_CREATEBRUSHINDIRECT = 39; EMR_DELETEOBJECT = 40; EMR_ANGLEARC = 41; EMR_ELLIPSE = 42; EMR_RECTANGLE = 43; EMR_ROUNDRECT = 44; EMR_ARC = 45; EMR_CHORD = 46; EMR_PIE = 47; EMR_SELECTPALETTE = 48; EMR_CREATEPALETTE = 49; EMR_SETPALETTEENTRIES = 50; EMR_RESIZEPALETTE = 51; EMR_REALIZEPALETTE = 52; EMR_EXTFLOODFILL = 53; EMR_LINETO = 54; EMR_ARCTO = 55;EMR_ENDPATH = 60; EMR_CLOSEFIGURE = 61; EMR_FILLPATH = 62; EMR_STROKEANDFILLPATH = 63; EMR_STROKEPATH = $40; EMR_FLATTENPATH = 65; EMR_WIDENPATH = 66; EMR_SELECTCLIPPATH = 67; EMR_ABORTPATH = 68; EMR_GDICOMMENT = 70; EMR_FILLRGN = 71; EMR_FRAMERGN = 72; EMR_INVERTRGN = 73; EMR_PAINTRGN = 74; EMR_EXTSELECTCLIPRGN = 75; EMR_BITBLT = 76; EMR_STRETCHBLT = 77; EMR_MASKBLT = 78; EMR_PLGBLT = 79; EMR_SETDIBITSTODEVICE = 80; EMR_STRETCHDIBITS = 81; EMR_EXTCREATEFONTINDIRECTW = 82; EMR_EXTTEXTOUTA = 83; EMR_EXTTEXTOUTW = 84; EMR_POLYBEZIER16 = 85; EMR_POLYGON16 = 86; EMR_POLYLINE16 = 87; EMR_POLYBEZIERTO16 = 88; EMR_POLYLINETO16 = 89; EMR_POLYPOLYLINE16 = 90; EMR_POLYPOLYGON16 = 91; EMR_POLYDRAW16 = 92; EMR_CREATEMONOBRUSH = 93; EMR_CREATEDIBPATTERNBRUSHPT = 94;varHMetaFile: HENHMETAFILE; {EMF 文件句柄}RadioGroupItemIndex: Integer = -1;//EnumEnhMetaFile 的回调函数function MyEnhMetaFunc(DisplaySurface: HDC; var MetafileTable: THandleTabl e;var MetafileRecord: TEnhMetaRecord; ObjectCount: Integer; var Data: Longin t): Integer; stdcall;varitype: Integer;begincase RadioGroupItemIndex of1: itype := EMR_RECTANGLE;2: itype := EMR_ELLIPSE;end;if MetafileRecord.iType = itype thenbeginPlayEnhMetaFileRecord(DisplaySurface, MetafileTable, MetafileRecord, Ob jectCount);Result := 1;end;end;procedure TForm1.FormCreate(Sender: TObject);varMetaFileDC: HDC;begin{文件建立在内存}MetaFileDC := CreateEnhMetaFile(0, nil, nil, nil);MoveToEx(MetaFileDC, 0, 0, nil);LineTo(MetaFileDC, 100, 100);{矩形}Rectangle(MetaFileDC, 10, 10, 30, 30);{椭圆}unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls;typeTForm1 = class(TForm)ColorBox1: TColorBox;ColorBox2: TColorBox;ComboBox1: TComboBox;procedure FormCreate(Sender: TObject);procedure FormDestroy(Sender: TObject);procedure FormPaint(Sender: TObject);procedure ColorBox1Change(Sender: TObject);procedure ColorBox2Change(Sender: TObject);procedure ComboBox1Change(Sender: TObject);end;varForm1: TForm1;implementation{$R *.dfm}varHMetaFile: HENHMETAFILE; {EMF 文件句柄}p: TPen;b: TBrush;//EnumEnhMetaFile 的回调函数function MyEnhMetaFunc(DisplaySurface: HDC; var MetafileTable: THandleTabl e;var MetafileRecord: TEnhMetaRecord; ObjectCount: Integer; var Data: Longin t): Integer; stdcall;begincase MetafileRecord.iType ofEMR_CREATEPEN: SelectObject(DisplaySurface, p.Handle);EMR_CREATEBRUSHINDIRECT: SelectObject(DisplaySurface, b.Handle);elsePlayEnhMetaFileRecord(DisplaySurface, MetafileTable, MetafileRecord, Ob jectCount);Result := 1;end;end;procedure TForm1.FormCreate(Sender: TObject);varMetaFileDC: HDC;begin{文件建立在内存}MetaFileDC := CreateEnhMetaFile(0, nil, nil, nil);p := TPen.Create;b := TBrush.Create;p.Color := clRed;b.Style := bsCross;b.Color := clSilver;SelectObject(MetaFileDC, p.Handle);SelectObject(MetaFileDC, b.Handle);MoveToEx(MetaFileDC, 0, 0, nil);LineTo(MetaFileDC, 80, 80);{矩形}Rectangle(MetaFileDC, 10, 10, 30, 50);{椭圆}Ellipse(MetaFileDC, 30, 30, 50, 70);HMetaFile := CloseEnhMetaFile(MetaFileDC);DeleteObject(MetaFileDC);maText :='bsSolid,bsClear,bsHorizontal,bsVertical,bsFDiagonal,bsBDiagonal,bsCros s,bsDiagCross';end;procedure TForm1.FormPaint(Sender: TObject);beginEnumEnhMetaFile(Canvas.Handle, HMetaFile, @MyEnhMetaFunc, nil, ClientRec t);end;procedure TForm1.ColorBox1Change(Sender: TObject);beginp.Color := ColorBox1.Selected;Repaint;end;procedure TForm1.ColorBox2Change(Sender: TObject);beginb.Color := ColorBox2.Selected;Repaint;end;procedure boBox1Change(Sender: TObject);beginb.Color := ColorBox2.Selected;case ComboBox1.ItemIndex of0: b.Style := bsSolid;1: b.Style := bsClear;2: b.Style := bsHorizontal;3: b.Style := bsVertical;4: b.Style := bsFDiagonal;5: b.Style := bsBDiagonal;6: b.Style := bsCross;Top = 16Width = 116Height = 22ItemHeight = 16TabOrder = 0OnChange = ColorBox1Changeendobject ColorBox2: TColorBoxLeft = 200Top = 44Width = 116Height = 22ItemHeight = 16TabOrder = 1OnChange = ColorBox2Changeendobject ComboBox1: TComboBoxLeft = 200Top = 72Width = 116Height = 21ItemHeight = 13TabOrder = 2Text = 'ComboBox1'OnChange = ComboBox1ChangeendendWinAPI: 测试BitBltBitBlt(DestDC: HDC; {目标 DC}X, Y, Width, Height: Integer; {目标位置与大小}SrcDC: HDC; {源 DC}XSrc, YSrc: Integer; {源起始位置}Rop: DWORD {光栅操作码, 也就是源像素与目标像素的混合方式}procedure FormCreate(Sender: TObject);procedure FormDestroy(Sender: TObject);procedure FormPaint(Sender: TObject);procedure ListBox1Click(Sender: TObject); end;varForm1: TForm1;implementation{$R *.dfm}varbit1,bit2: TBitmap;cvs1,cvs2,cvs3: TCanvas;procedure TForm1.FormCreate(Sender: TObject); beginwith ListBox1.Items dobeginAdd('SRCCOPY ');Add('SRCPAINT ');Add('SRCAND ');Add('SRCINVERT ');Add('SRCERASE ');Add('NOTSRCCOPY ');Add('NOTSRCERASE');Add('MERGECOPY ');Add('MERGEPAINT ');Add('PATCOPY ');Add('PATPAINT ');Add('PATINVERT ');Add('DSTINVERT ');Add('BLACKNESS ');Add('WHITENESS ');end;Panel1.Caption := '';Panel2.Caption := '';Panel3.Caption := '';bit1 := TBitmap.Create;bit1.Width := Panel1.ClientWidth;bit1.Height := Panel1.ClientHeight;bit2 := TBitmap.Create;bit2.Width := Panel2.ClientWidth;bit2.Height := Panel2.ClientHeight;cvs1 := TCanvas.Create;cvs2 := TCanvas.Create;cvs3 := TCanvas.Create;cvs1.Handle := GetDC(Panel1.Handle);cvs2.Handle := GetDC(Panel2.Handle);cvs3.Handle := GetDC(Panel3.Handle);end;procedure TForm1.FormDestroy(Sender: TObject);beginbit1.Free;bit2.Free;cvs1.Free;cvs2.Free;cvs3.Free;end;procedure TForm1.FormPaint(Sender: TObject);constColorArr: array[0..5] of TColor = (clRed, clGreen, clBlue, clYellow, clFuc hsia, clPurple);varwi,hi: Integer;I: Integer;beginwi := bit1.Width div4;hi := bit1.Height div4;bit1.Canvas.Pen.Width := 10;for I := 1to3dobeginbit1.Canvas.Pen.Color := ColorArr[i-1];bit1.Canvas.MoveTo(wi*i, 0);bit1.Canvas.LineTo(wi*i, bit1.Height);bit1.Canvas.Pen.Color := ColorArr[i+2];bit1.Canvas.MoveTo(0, hi*i);bit1.Canvas.LineTo(bit1.Width, hi*i);end;bit2.Canvas.Pen.Width := 15;bit2.Canvas.Ellipse(15, 15, bit2.Width-15, bit2.Height-15);cvs1.Draw(0, 0, bit1);cvs2.Draw(0, 0, bit2);end;procedure TForm1.ListBox1Click(Sender: TObject);varRop: Cardinal;beginRepaint;Rop := SRCCOPY;case ListBox1.ItemIndex of0 : Rop := SRCCOPY ;1 : Rop := SRCPAINT ;2 : Rop := SRCAND ;3 : Rop := SRCINVERT ;4 : Rop := SRCERASE ;5 : Rop := NOTSRCCOPY ;6 : Rop := NOTSRCERASE;PixelsPerInch = 96TextHeight = 13object Panel1: TPanelLeft = 8Top = 8Width = 180Height = 140Caption = 'Panel1'TabOrder = 0endobject Panel2: TPanelLeft = 194Top = 8Width = 119Height = 105Caption = 'Panel2'TabOrder = 1endobject Panel3: TPanelLeft = 8Top = 154Width = 180Height = 140Caption = 'Panel3'TabOrder = 2endobject ListBox1: TListBox Left = 194Top = 119Width = 119Height = 176ItemHeight = 13TabOrder = 3OnClick = ListBox1Click endend。
Delphi常用函数表

Delphi常⽤函数表 --2 EnumProps API 返回窗⼝属性表列EnumPropsEx API 返回窗⼝属性表列EnumResourceLanguages API 列出语⾔资源EnumResourceNames API 列出资源名称EnumResourceTypes API 列出资源类型EnumServicesStatus API 枚举SC管理器数据库中的服务EnumSystemCodePages API 枚举已安装的可⽤系统代码页EnumSystemLocales API 枚举已安装的系统局部EnumThreadWindows API 返回线索窗⼝EnumTimeFormats API 枚举本地指定时间格式EnumWindowStations APIEqualPrefixSid API 检查两个SLD前缀是否相等EqualRect API 确定两矩形是否相等待EqualRgn API ⽐较两区域是否相等EqualSid API 检查两SLD安全ID是否相等EraseTape API 删除磁带的指定段Escape API 允许访问设备EscapeCommFunction API 发送扩展COMM函数ExcludeClipRect API 改变剪裁区ExcludeUpdateRgn API 从剪裁区中排斥更新区域ExitProcess API 退出当前进程ExitThread API 退出当前线索ExitWindows API 关闭WINDOWSExitWindowsEx API 关闭WINDOWSExpandEnvironmentStrings API 扩充环境变量字符串ExtCreatePen API 建⽴逻辑画笔ExtCreateRegion API 从区域数据中建⽴⼀个区域ExtEscape API 允许访问私有设备ExtFloodFill API ⽤当前刷⼦填充区域ExtSelectClipRgn API 选择⼀块区域作为剪裁区ExtTextOut API 在矩形区域中输出⼀个字符串ExtractAssociatedIcon API 从⽂件或相关EXE中获取图标句柄ExtractIcon API 从可执⾏⽂件中返回图标句柄ExtractIconEx APIEditMask 属性编辑模式Enabled 属性是否使标签呈现打开状态EncodeDate 函数将年⽉⽇合成为⽇期格式EncodeTime 函数将时、分、秒、毫秒合成为时间格式EndMargin 属性末尾边缘Eof 函数对有类型或⽆类型⽂件测试是否到⽂件尾Eoln 函数返回⽂本⽂件的⾏结束状态Erase 命令删除外部⽂件ExceptAddr 函数返回引起当前意外的地址Exclude 函数从集合中删除⼀些元素ExceptObject 函数返回当前意外的索引Exit 命令⽴即从当前的语句块中退出Exp 函数指数函数ExpandFileName 函数返回包含绝对路径的字符串ExtendedSelect 属性是否允许存在选择模式,True时,MultiSelect才有意义ExtractFileDir 函数返回驱动器和路径ExtractFileExt 函数返回⽂件的后缀ExtractFileName 函数返回⽂件名ExtractFilePath 函数返回指定⽂件的路径===============================================FatalAppExit API 结束⼀个应⽤程序FatalExit API 向调试者返回控件FileTimeToDosDateTime API 将⽂件时间转换为MS-DOS⽇期FileTimeToLocalFileTime API 将UTC⽂件时间转换成本地⽂件时间FileTimeToSystemTime API 将64位时间转换为系统时间FillConsoleOutputAttribute API 将属性写⼊屏幕缓冲区FillConsoleOutputCharacter API 将字符写⼊屏幕缓冲区FillPath API 填充当前路径FillRect API ⽤指定刷⼦填充矩形区域FillRgn API ⽤刷⼦填充区域FindAtom API 从本地原⼦表中返回字符串原⼦FindClose API 关闭查找⽂件描述表FindCloseChangeNotification API 光闭⽂件或⽬录修改等待FindClosePrinterChangeNotification APIFindEnvironmentString APIFindExecutable API 返回可执⾏⽂件名及句柄FindFirstChangeNotification API 设置⽂件或⽬录修改等待FindFirstFile API 查找第⼀个匹配⽂件FindFirstFreeAce API 返回指向第⼀个空闲ACL字节的指针FindFirstPrinterChangeNotification APIFindNextChangeNotification API 请求对下⼀个⽂件或⽬录变化的通知FindNextFile API 查找下⼀个匹配⽂件FindNextPrinterChangeNotification APIFindResource API 在模块中寻找资源FindResourceEx API 在模块中寻找资源FindText API 建⽴查找⽂本对话框FindWindow API 返回⼀个与类和窗⼝名相关的窗⼝句柄FindWindowEx APIFixBrushOrgEx APIFlashWindow API 使窗⼝闪烁⼀次FlattenPath API 将弧变为线FloodFill API ⽤当前刷⼦填充区域FlushConsoleInputBuffer API 清除控制台输⼊缓冲区FlushFileBuffers API 清除⽂件缓冲区FlushInstructionCache API 填满指令缓冲区FlushViewOfFile API ⽤映像视图填充⽂件FoldString API 变换字符串FormatMessage API 格式化消息字符串FrameRect API ⽤指定刷⼦画⼀个窗⼝边框FrameRgn API 在区域四周画出边框FreeConsole API 释放控制台FreeDDElParam API 释放DDE消息IPARAM FreeEnvironmentStrings APIFreeLibrary API 卸载库模块FreeLibraryAndExitThread APIFreeResource APIFreeSid API 释放SIDFileAge 函数返回⽂件已存在的时间FileClose 命令关闭指定的⽂件FileCreate 命令⽤指定的⽂件名建⽴新⽂件FileDateToDateTime 函数将DOS的⽇期格式转换为DELPHI的⽇期格式FileExists 函数检查⽂件是否存在FileGatAttr 函数返回⽂件的属性FileGetDate 函数返回⽂件的DOS⽇期时间标记FileOpen 命令⽤指定的存取模式打开指定的⽂件FilePos 函数返回⽂件的当前指针位置FileRead 命令从指定的⽂件读取FileSearch 命令在⽬录中搜索指定的⽂件FileSeek 函数改变⽂件的指针FileSetAttr 函数设置⽂件属性FileSetDate 函数设置⽂件的DOS⽇期时间标记FileSize 函数返回当前⽂件的⼤⼩FileWrite 函数对指定的⽂件做写操作FillChar 函数⽤指定的值填充连续字节的数FindClose 命令终⽌FindFirst/FindNext序列FindFirst 命令对指定的⽂件名及属性搜索⽬录FindNext 命令返回与⽂件名及属性匹配的下⼀⼊⼝FloatToDecimal 函数将浮点数转换为⼗进制数FloatToStrF 函数将浮点数转换为字符串FloatToStr 函数将浮点数转换为字符串FloatToText 函数将给定的浮点数转换为⼗进制数FloatToTextFmt 函数将给定的浮点数转换为⼗进制数Flush 函数将缓冲区的内容刷新到输出的⽂本⽂件中FmtLoadStr 函数从程序的资源字符串表中装载字符串FmtStr 函数格式化⼀系列的参数,其结果以参数Result返回Font 属性设置字体Format 函数格式化⼀系列的参数并返回Pascal字符串FormatBuf 函数格式化⼀系列的参数FormatDateTime 函数⽤指定的格式来格式化⽇期和时间FormatFloat 函数指定浮点数格式Frac 函数返回参数的⼩数部分FreeMem 函数按给定⼤⼩释放动态变量所占的空间=============================================== GdiComment API 向增强型图元⽂件中加⼊注释GdiFlush API 使当前GDI闪烁GdiGetBatchLimit API 返回缓冲GDI函数数量GdiSetBatchLimit API 设置缓冲GDI函数数量GenerateConsoleCtrlEvent API 向控制台进程组发送信号GetACP API 获取ANSI系统代码页GetAce API 返回指向ACL中的ACE的指针GetAclInformation API 返回访问控件表信息GetActiveWindow API 返回活动窗⼝句柄GetArcDirection API 返回弧和矩形的绘画⽅向GetAspectRatioFilterEx API 返回当前ASPECT-RATIO过滤器GetAsyncKeyState API 确定键的状态GetAtomName API 返回本地原⼦字符串GetBinaryType API 确定⼆进制可执⾏⽂件类型GetBitmapBits API 将位图复制到缓冲区GetBitmapDimensionEx API 返回位图宽和⾼GetBkColor API 返回当前背景⾊GetBkMode API 返回背景模式GetBoundsRect API 返回当前相邻矩形GetBrushOrgEx APIGetCPInfo API 获取代码页信息GetCapture APIGetCaretBlinkTime API 返回脱字号闪烁时间GetCaretPos API 返回当前脱字号位置GetCharABCWidths API 返回字符宽度GetCharABCWidthsFloat API 返回字符宽度GetCharWidth API 返回字符宽度GetCharWidth32 API 返回字符宽度GetCharWidthFloat API 返回部分字符宽度GetCharacterPlacement API 获取字符串属性数据GetClassInfo API 返回窗⼝类信息GetClassLong API 返回窗⼝类数据GetClassName API 返回窗⼝类名称GetClassWord API 返回窗⼝类内存字GetClientRect API 返回窗⼝客户区坐标GetClipBox API 取剪裁区域框GetClipCursor API 返回限制光标的矩形的坐标GetClipRgn API 返回当前剪辑域GetClipboardData API 返回剪贴板数据的句柄GetClipboardFormatName API 返回登录的剪贴板格式名GetClipboardOwner API 返回剪贴板所有者窗⼝句柄GetClipboardViewer API 返回第⼀个剪贴板浏览窗⼝句柄GetColorAdjustment API 获取设备描述表调整值GetColorSpace API 获取指定⾊彩空间GetCommConfig APIGetCommMask API 返回COMM事件屏蔽GetCommModemStatus API 返回调制解调器控制登录值GetCommProperties API 返回COMM设备属性GetCommState API 返回COMM设备控制块GetCommTimeouts API 返回COMM设备超时特性值GetCommandLine API 返回指向命令⾏的指针GetCompressedFileSize APIGetComputerName API 取回当前计算机名GetConsoleCP API 为控制台输⼊获取代码页GetConsoleCursorInfo API 返回光标⼤⼩GetConsoleMode API 返回控制台输⼊输出模式GetConsoleOutputCP API 为控制台输出获取代码页GetConsoleScreenBufferInfo API 返回屏幕缓冲区信息GetConsoleTitle API 返回控制台窗⼝标题GetCurrencyFormat APIGetCurrentDirectory API 返回当前⽬录GetCurrentObject API 返回当前对象GetCurrentPositionEx API 返回逻辑单元位置GetCurrentProcess API 返回当前进程的句柄GetCurrentProcessId API 返回当前进程ID值GetCurrentThread API 返回当前线索的句柄GetCurrentThreadId API 返回当前线索ID值GetCursor API 返回当前光标的句柄GetCursorPos API 返回当前光标的位置GetDC API 返回窗⼝描述表句柄GetDCEx API 返回显⽰描述表的句柄GetDCOrgEx API 返回设备描述表的转换起点GetDIBColorTable APIGetDIBits API 将DIB位复制到缓冲区中GetDateFormat API 获取本地⽇期格式GetDefaultCommConfig APIGetDesktopWindow API 返回桌⾯窗⼝句柄GetDeviceCaps API 返回设备性能GetDeviceGammaRamp API 获取显⽰器的辉度系数GetDialogBaseUnits API 返回对话基础单元GetDiskFreeSpace API 返回空闲磁盘空间GetDlgCtrlID API 返回⼉⼦窗⼝的ID值GetDlgItem API 返回对话框控件句柄GetDlgItemInt API 将对话框⽂本转换为整数GetDlgItemText API 返回对话框控件⽂本GetDoubleClickTime API 返回⿏标双击时间GetDriveType API 返回指定驱动器类型GetDriverModuleHandle API 返回驱动程序模块例⼦句柄GetEnhMetaFile API 建⽴增强图元⽂件GetEnhMetaFileBits API 将增强图元⽂件值复制到缓冲区GetEnhMetaFileDescription API 返回增强图元⽂件的标题及建⽴者GetEnhMetaFileHeader API 返回增强图元⽂件头GetEnhMetaFilePaletteEntries API 返回增强图元⽂件调⾊板⼊⼝GetEnvironmentStrings API 返回指向环境块的指针GetEnvironmentVariable API 返回过程环境变量GetExitCodeProcess API 返回过程中断代码GetExitCodeThread API 返回线索中断代码GetExpandedName API 取压缩⽂件的原⽂件名GetFileAttributes API 返回⽂件属性GetFileInformationByHandle API 返回⽂件信息GetFileSecurity API 获取⽂件或⽬录安全信息GetFileSize API 返回指定⽂件⼤⼩GetFileTime API 返回⽂件64位时间GetFileTitle API 返回⽂件名GetFileType API 返回⽂件类型GetFileVersionInfo API 返回⽂件的版本信息GetFileVersionInfoSize API 返回可⽤版本信息⼤⼩GetFocus API 返回当前焦点窗⼝句柄GetFontData API 返回字体数据GetFontLanguageInfo API 获取字体显⽰描述表的信息GetForegroundWindow API 返回前景窗⼝句柄GetForm API 获取打印机窗⼝信息GetFullPathName API 返回⽂件的路径名GetGlyphOutline API 取回轮廓数据GetGraphicsMode API 取回指定DC的图形模式GetHandleInformation APIGetICMProfile API 返回设备场景的⾊彩映像GetIconInfo API 返回图标或光标信息GetInputState API 确定⿏标、键盘、定时器状态GetJob API 获取打印作业信息GetKBCodePage API 获取OEM系统代码页GetKernelObjectSecurity API 返回内核对象SD GetKerningPairs API 返回当前字体内核对GetKeyNameText API 返回代表键盘名字的字符串GetKeyState API 返回虚拟键的状态GetKeyboardLayout APIGetKeyboardLayoutList APIGetKeyboardLayoutName API 返回活动键盘版⾯名GetKeyboardState API 返回虚拟键盘状态GetKeyboardType API 返回键盘信息GetLargestConsoleWindowSize API 返回窗⼝尺⼨的最⼤可能性GetLastActivePopup API 确定最近的活动弹出式窗⼝GetLastError API 返回扩充出错代码GetLengthSid API 返回SID长度GetLocalTime API 返回本地时间和⽇期GetLocaleInfo API 从记录中获取本机信息GetLogColorSpace API 获取逻辑⾊彩空间的信息GetLogicalDriveStrings API 返回合法驱动器字符串GetLogicalDrives API 指定合法驱动器GetMailslotInfo API 返回信箱信息GetMapMode API 返回映像模式GetMenu API 返回指定窗⼝的菜单句柄GetMenuCheckMarkDimensions API 返回缺省复选标记位图尺⼨GetMenuContextHelpId APIGetMenuDefaultItem APIGetMenuItemCount API 返回菜单项数GetMenuItemID API 返回菜单项标识符GetMenuItemInfo APIGetMenuItemRect APIGetMenuState API 返回指定菜单项的菜单标记GetMenuString API 将菜单项字符串复制⼊缓冲区GetMessage API 从线索消息队列中返回⼀条消息GetMessageExtraInfo API 返回硬件消息的信息GetMessagePos API 返回最后消息的光标位置GetMessageTime API 返回最后消息的时间位置GetMetaFile API 建⽴WINDOWS图元⽂件GetMetaFileBitsEx API 将WINDOWS图元⽂件复制⼊缓冲区GetMetaRgn API 返回当前图元区域GetMiterLimit API 返回当前MITER-JOIN长度GetModuleFileName API 返回指定模块的路径GetModuleHandle API 返回指定模块的句柄GetNamedPipeHandleState API 返回命名管道句柄消息GetNamedPipeInfo API 返回命名管道句柄消息GetNearestColor API 返回最近的可⽤⾊彩GetNearestPaletteIndex API 返回最近的匹配⾊彩GetNextDlgGroupItem API 返回前或后⼀组控件的句柄GetNextDlgTabItem API 返回前或后⼀个WS_TABSTOP控件GetNextWindow API 返回前或后⼀窗⼝管理器窗⼝GetNumberFormat APIGetNumberOfConsoleInputEvents API 返回控制台队列事件数GetNumberOfConsoleMouseButtons API 返回⿏标按钮数GetNumberOfEventLogRecords API 获取事件记录中的记录数GetOEMCP API 获取OEM系统代码页GetObject API 返回对象信息GetObjectType API 返回对象类型GetObject API 返回对象信息GetObjectType API 返回对象类型GetOldestEventLogRecord API 返回最早的记录数GetOpenClipboardWindow API 返回打开CLIPBOARD的窗⼝句柄GetOpenFileName API 建⽴⽂件名对话框GetOutlineTextMetrics API 返回TRUETYPE字体的公制类型GetOverlappedResult API 返回最后重叠结果GetPaletteEntries API 返回调⾊板⼊⼝范围GetParent API 返回⽗⼝句柄GetPath API 返回路径中的所有直线和曲线GetPixel API 返回指定像素的RGB值GetPixelFormat APIGetPolyFillMode API 返回当前多边形填充模式GetPrintProcessorDirectory API 获取打印机驱动处理器路径GetPrinter API 获取打印机信息GetPrinterData API 获取打印机配置信息GetPrinterDriver API 获取打印机驱动程序信息GetPrinterDriverDirectory API 获取打印机驱动程序路径GetPriorityClass API 返回过程的优先级类GetPriorityClipboardFormat API 返回第⼀个CLIPBOARD格式GetPrivateObjectSecurity API 返回保护服务器对象SD GetPrivateProfileInt API 从私有⽂件中获取整数GetPrivateProfileSection API 返回私有键和值GetPrivateProfileString API 从私有⽂件中获取字符串GetProcAddress API 返回函数地址GetProcessAffinityMask API 获取任务可⽤的处理表列GetProcessHeap API 获取调⽤过程堆句柄GetProcessHeaps APIGetProcessShutdownParameters API 返回过程停⽌参数GetProcessTimes API 获取过程计时器GetProcessWindowStation API 返回过程窗⼝站句柄GetProcessWorkingSetSize APIGetProfileInt API 从WIN.INI中获取整数GetProfileSection API 从WIN.INI中返回关键字和值GetProfileString API 从WIN.INI中获取字符串GetProp API 从窗⼝属性表列中返回数据句柄GetQueueStatus API 确定消息队列内容GetQueuedCompletionStatus APIGetROP2 API 返回当前绘图模式GetRasterizerCaps API 返回系统TRUETYPE状态GetRegionData API 返回区域数据GetRgnBox API 返回区域边框矩形GetSaveFileName API 建⽴⽂件名保存对话框GetScrollInfo APIGetScrollPos API 返回滑块位置GetScrollRange API 返回滑块运动范围GetSecurityDescriptorControl API 取回SD校正及控制信息GetSecurityDescriptorDacl API 返回SD离散ACL GetSecurityDescriptorGroup API 返回SD个⼈组信息GetSecurityDescriptorLength API 返回SD长度GetSecurityDescriptorOwner API 返回SD所有⼈GetSecurityDescriptorSacl API 返回SD系统ACL GetServiceDisplayName API 获取服务显⽰名称GetServiceKeyName API 获取服务登录关键名称GetShortPathName API 返回⽂件短路径GetSidIdentifierAuthority API 返回ID字段地址GetSidLengthRequired API 返回所需SID长度GetSidSubAuthority API 返回次规范数组地址GetSidSubAuthorityCount API 返回次字段地址GetStartupInfo API 获取当前过程的启始信息GetStdHandle API 返回标准I/O句柄GetStockObject API 返回常⽤画笔、刷⼦或字段的句柄GetStretchBltMode API 返回位图拉伸模式GetStringTypeA API 获取ANSI字符串类型GetStringTypeEx APIGetStringTypeW API 获取UNICODE字符串类型GetSubMenu API 返回弹出式菜单句柄GetSysColor API 返回显⽰元素⾊彩GetSysColorBrush APIGetSystemDefaultLCID API 获取系统缺省本地ID GetSystemDefaultLangID API 获取系统缺省语⾔ID GetSystemDirectory API 返回WINDOWS系统⽬录路径GetSystemInfo API 返回系统信息GetSystemMenu API 访问系统菜单GetSystemMetrics API 返回系统公制GetSystemPaletteEntries API 返回系统调⾊板⼊⼝GetSystemPaletteUse API 确定使⽤整个系统调⾊板GetSystemPowerStatus API 获取系统AC或DC电源状态GetSystemTime API 返回系统时间和⽇期GetSystemTimeAdjustment APIGetTabbedTextExtent API 确定制表串⼤⼩GetTapeParameters API 返回磁带驱动器或介质信息GetTapePosition API 返回当前磁带位置GetTapeStatus API 返回磁带机状态GetTempFileName API 建⽴临时⽂件名GetTempPath API 返回临时⽂件路径GetTextAlign API 返回⽂本对齐标志GetTextCharacterExtra API 返回⽂本字符间隔GetTextCharset APIGetTextCharsetInfo API 返回当前字体设置信息GetTextColor API 返回当前⽂本⾊彩GetTextExtentExPoint API 返回⼦字符串长度数组GetTextExtentPoint API 返回字符串⼤⼩GetTextExtentPoint32 API 返回字符串⼤⼩GetTextFace API 返回当前字体的字样GetTextMetrics API 返回当前字体的公制GetThreadContext API 返回指定线索描述表GetThreadDesktop API 返回线索桌⾯句柄GetThreadLocale API 获取线索本地信息GetThreadPriority API 返回指定线索优先级GetThreadSelectorEntry API 返回线索描述⼊⼝GetThreadTimes API 返回线索计时信息GetTickCount API 返回WINDOWS运⾏时间GetTimeFormat API 获取本地指定的时间字符串GetTimeZoneInformation API 返回当前时区信息GetTokenInformation API 返回指定令牌信息GetTopWindow API 返回指定窗⼝的顶端⼉⼦句柄GetUpdateRect API 返回窗⼝更新区域⼤⼩GetUpdateRgn API 返回窗⼝更新区域⼤⼩GetUserDefaultLCID API 获取⽤户缺省本地ID GetUserDefaultLangID API 获取⽤户缺省语⾔ID GetUserName API 返回⽤户名GetUserObjectInformation APIGetUserObjectSecurity API 返回服务器对象SD信息GetVersion API 返回WINDOWS和操作系统版本GetVersionEx API 返回扩展操作系统版本信息GetViewportExtEx API 返回视窗宽度GetViewportOrgEx API 返回视⼝源GetVolumeInformation API 返回⽂件系统信息GetWinMetaFileBits API 返回WINDOWS格式的图元⽂件内容GetWindow API 返回指定窗⼝句柄GetWindowContextHelpId APIGetWindowDC API 返回窗⼝设备⼚描述表GetWindowExtEx API 返回窗⼝宽度GetWindowLong API 从附加窗⼝内存中返回长型数值GetWindowOrgEx API 返回窗⼝源GetWindowPlacement API 返回窗⼝显⽰状态及最⼩/最⼤位置GetWindowRect API 返回窗⼝坐标GetWindowRgn APIGetWindowText API 将窗⼝⼯具栏⽂本复制到缓冲区GetWindowTextLength API 返回窗⼝⼯具栏⽂本长度GetWindowThreadProcessId API 返回窗⼝线索及过程ID GetWindowWord API 从附加窗⼝内存中返回字值GetWindowsDirectory API 返回窗⼝WINDOWS⽬录GetWorldTransform API 返回当前变换式GlobalAddAtom API 在系统原⼦表中加⼊字符串GlobalAlloc API 在堆中分配内存GlobalCompact APIGlobalDeleteAtom API 从系统原⼦表中删除原⼦GlobalFindAtom API 从全局原⼦表中返回字符串原⼦GlobalFix APIGlobalFlags API 返回全局内存块信息GlobalFree API 释放全局内存块GlobalGetAtomName API 返回全局原⼦字符串GlobalHandle API 将全局指针转换为句柄GlobalLock API 锁定内存对象并返回⼀个指针GlobalMemoryStatus API 检查内存状态GlobalReAlloc API 修改全局内存块⼤⼩/属性GlobalSize API 返回全局内存块⼤⼩GlobalUnWire APIGlobalUnfix APIGlobalUnlock API 开锁全局内存块GlobalWire APIGrayString API 在指定位置画灰⾊⽂本GetDir 返回指定驱动器的当前⽬录GetHeapStatus 返回内存管理器的当前状态GetMem 建⽴⼀指定⼤⼩的动态变量,并将指针指向该处GetMemoryManager 返回内存管理器的⼊⼝点Glyph 函数按钮上的图象。
API 窗口函数(delphi)

varh: HWND; {把句柄定义成全局变量以避免重复}{准备工作}procedure TForm1.FormCreate(Sender: TObject); beginMemo1.Align := alLeft;Memo1.ScrollBars := ssBoth;Timer1.Enabled := False;Timer1.Interval := 100;end;{启动与停止}procedure TForm1.Button1Click(Sender: TObject); beginTimer1.Enabled := not Timer1.Enabled;case Timer1.Enabled ofTrue : Text := '开始截获';False: Text := '停止截获';end;Memo1.Clear;end;{定时获取}procedure TForm1.Timer1Timer(Sender: TObject); varp: array[0..254] of Char;beginif h <> GetForegroundWindow thenbeginh := GetForegroundWindow;GetWindowText(h, p, 255);if p <> ''then Memo1.Lines.Add(p);{设定计算器的 Alpha 透明}procedure TForm1.Button1Click(Sender: TObject);varh: HWND;FormStyle: Integer;beginh := FindWindow('SciCalc', nil);FormStyle := GetWindowLong(Handle, GWL_EXSTYLE);SetWindowLong(h, GWL_EXSTYLE, FormStyle or WS_EX_LAYERED);SetLayeredWindowAttributes(h, 0, 128, LWA_ALPHA);end;{设定计算器中的白色透明}procedure TForm1.Button2Click(Sender: TObject);varh: HWND;FormStyle: Integer;beginh := FindWindow('SciCalc', nil);FormStyle := GetWindowLong(Handle, GWL_EXSTYLE);SetWindowLong(h, GWL_EXSTYLE, FormStyle or WS_EX_LAYERED);SetLayeredWindowAttributes(h, clWhite, 255, LWA_COLORKEY);end;end.获取窗口矩形的四种方法: GetClientRect、ClientRect、GetWindowRect、Boun dsRect其中GetClientRect、ClientRect 获取的是窗口的客户区矩形;GetWindowRect、BoundsRect 是获取窗口矩形;另外, 还有一个Windows.GetClientRect(使用方法同GetWindowRect, 它们都是API 函数), 这里使用的GetClientRect 是Forms.GetClientRect.procedure TForm1.FormPaint(Sender: TObject); conststr = 'L:%d; T:%d; R:%d; B:%d - ';varR1,R2,R3,R4: TRect;buf: array[Byte] of Char;x,y,h: Integer;beginR1 := GetClientRect;R2 := Self.ClientRect;GetWindowRect(Handle, R3);R4 := Self.BoundsRect;x := 10;y := 10;h := 10;Randomize;Canvas.Font.Color := Random($FFFFFF);wvsprintf(buf, str + 'GetClientRect', @R1);Canvas.TextOut(x, y, buf);y := y + h + Canvas.TextHeight(buf);wvsprintf(buf, str + 'Self.ClientRect', @R2); Canvas.TextOut(x, y, buf);y := y + h + Canvas.TextHeight(buf);Canvas.Font.Color := Random($FFFFFF);wvsprintf(buf, str + 'GetWindowRect', @R3);Canvas.TextOut(x, y, buf);y := y + h + Canvas.TextHeight(buf);wvsprintf(buf, str + 'Self.BoundsRect', @R4); Canvas.TextOut(x, y, buf);end;procedure TForm1.FormResize(Sender: TObject);。
delphi函数

Random(n)——取值范围为n, 即函数返回0至n-1之间的随机数.Randomize 过程----- 用它来重置随机数发生器.生成一个随机数.New(p)-----重新生成一个p(地址,动态分配内存.Dispose----例程释放你动态分配的内存。
Nil----表示空(指针).CheckBox1----选择框.ADD---表示加入. Listbox1.Items.Add(……….)Canvas----画板。
Canvas.Pen.Color---画板笔的颜色。
MessageDlg----对话框。
Dialog 对话RepeatK:=J MOD I;J:=I;I:=K;UNTIL I=0;(求最小公倍数)EOF(文件)(END OF FILE 是否到文件未)Listbox.items.count (表示列表框中的数量)Uppercase() 转化成大写Break 强制退出循环,continue 强制缩短循环,程序不往下进行,而是继续循环. EXIT 从当前代码块退出,如果代码块是主程序,则终止该程序,如果是函数或过程则立即退出该函数或过程. Halt 强制终止程序,语法格式为:procedure halt[(终止码:integer)];其中终止码可以省略runerrer 停止程序执行,并产生错误代码, 其语法为:procedure[(出错码:不byte)].Type TForm1{类的名称} = class(TForm{类的祖先,没有可以不写})Button1: TButton;{类的成员包括下面}btnchange: TButton;ListBox1: TListBox;有些是文本和数据输入的途径。
它们是Label(标签)、Edit(文本编辑)、MaskEdit(格式编辑)、Memo(备注)、List Box(列表框)、Combo Box(组合框)(一)控件与消息函数1、语法:AnyPopup: BOOL;单元:windows.pas(该单元DELPHI会自行在USES里加上,下同)作用:判断屏幕上是否存在任何弹出式窗口返回值:BOOL,如存在弹出式菜单,则返回T RUE注解:对该函数来说,弹出式菜单包含所有可见的包容顶级窗口,无论弹出式还是重叠窗口示例:procedure TForm1.Button1Click(Sender: TObject);beginif (AnyPopup) thenLabel1.Caption:=‘Pop-ups found: TRUE'elseLabel1.Caption:=‘Pop-ups found: FALSE';end;2、语法:EnableWindow(hWnd: HWND; bEnable: BOOL): BOOL;单元:windows.pas作用:指定的窗口里允许或禁止所有鼠标及键盘输入返回值:BOOL,如果返回真,WINDOWS已经禁止,否则返回假示例:procedure TForm1.Button1Click(Sender: TObject);beginif (IsWindowEnabled(Edit1.Handle)) thenbeginEnableWindow(Edit1.Handle,FALSE);Button1.Caption:=‘Enable Window';Edit1.Text:=‘This window is disabled';endelsebeginEnableWindow(Edit1.Handle,TRUE);Button1.Caption:=‘Disable Window';Edit1.Text:=‘This window is enabled';end;end;3、语法:FlashWindow(hWnd: HWND; bInvert: BOOL): BOOL;单元:windows.pas作用:闪烁显示指定窗口。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(DELPHI)API函数大全1. API之网络函数WNetAddConnection 创建同一个网络资源的永久性连接WNetAddConnection2 创建同一个网络资源的连接WNetAddConnection3 创建同一个网络资源的连接WNetCancelConnection 结束一个网络连接WNetCancelConnection2 结束一个网络连接WNetCloseEnum 结束一次枚举操作WNetConnectionDialog 启动一个标准对话框,以便建立同网络资源的连接WNetDisconnectDialog 启动一个标准对话框,以便断开同网络资源的连接WNetEnumResource 枚举网络资源WNetGetConnection 获取本地或已连接的一个资源的网络名称WNetGetLastError 获取网络错误的扩展错误信息WNetGetUniversalName 获取网络中一个文件的远程名称以及/或者UNC (统一命名规范)名称WNetGetUser 获取一个网络资源用以连接的名字WNetOpenEnum 启动对网络资源进行枚举的过程2. API之消息函数BroadcastSystemMessage 将一条系统消息广播给系统中所有的顶级窗口GetMessagePos 取得消息队列中上一条消息处理完毕时的鼠标指针屏幕位置GetMessageTime 取得消息队列中上一条消息处理完毕时的时间PostMessage 将一条消息投递到指定窗口的消息队列PostThreadMessage 将一条消息投递给应用程序RegisterWindowMessage 获取分配给一个字串标识符的消息编号ReplyMessage 答复一个消息SendMessage 调用一个窗口的窗口函数,将一条消息发给那个窗口SendMessageCallback 将一条消息发给窗口SendMessageTimeout 向窗口发送一条消息SendNotifyMessage 向窗口发送一条消息3. API之文件处理函数CloseHandle 关闭一个内核对象。
其中包括文件、文件映射、进程、线程、安全和同步对象等CompareFileTime 对比两个文件的时间CopyFile 复制文件CreateDirectory 创建一个新目录CreateFile 打开和创建文件、管道、邮槽、通信服务、设备以及控制台CreateFileMapping 创建一个新的文件映射对象DeleteFile 删除指定文件DeviceIoControl 对设备执行指定的操作DosDateTimeToFileTime 将DOS日期和时间值转换成一个win32 FILETIME 值FileTimeToDosDateTime 将一个win32 FILETIME 值转换成DOS日期和时间值FileTimeToLocalFileTime 将一个FILETIME结构转换成本地时间FileTimeToSystemTime 根据一个FILETIME结构的内容,装载一个SYSTEMTIME结构FindClose 关闭由FindFirstFile函数创建的一个搜索句柄FindFirstFile 根据文件名查找文件FindNextFile 根据调用FindFirstFile函数时指定的一个文件名查找下一个文件FlushFileBuffers 针对指定的文件句柄,刷新内部文件缓冲区FlushViewOfFile 将写入文件映射缓冲区的所有数据都刷新到磁盘GetBinaryType 判断文件是否可以执行GetCompressedFileSize 判断一个压缩文件在磁盘上实际占据的字节数GetCurrentDirectory 在一个缓冲区中装载当前目录GetDiskFreeSpace 获取与一个磁盘的组织有关的信息,以及了解剩余空间的容量GetDiskFreeSpaceEx 获取与一个磁盘的组织以及剩余空间容量有关的信息GetDriveType 判断一个磁盘驱动器的类型GetExpandedName 取得一个压缩文件的全名GetFileAttributes 判断指定文件的属性GetFileInformationByHandle 这个函数提供了获取文件信息的一种机制GetFileSize 判断文件长度GetFileTime 取得指定文件的时间信息GetFileType 在给出文件句柄的前提下,判断文件类型GetFileVersionInfo 从支持版本标记的一个模块里获取文件版本信息GetFileVersionInfoSize 针对包含了版本资源的一个文件,判断容纳文件版本信息需要一个多大的缓冲区GetFullPathName 获取指定文件的完整路径名GetLogicalDrives 判断系统中存在哪些逻辑驱动器字母GetLogicalDriveStrings 获取一个字串,其中包含了当前所有逻辑驱动器的根驱动器路径GetOverlappedResult 判断一个重叠操作当前的状态GetPrivateProfileInt 为初始化文件(.ini文件)中指定的条目获取一个整数值GetPrivateProfileSection 获取指定小节(在.ini文件中)所有项名和值的一个列表GetPrivateProfileString 为初始化文件中指定的条目取得字串GetProfileInt 取得win.ini初始化文件中指定条目的一个整数值GetProfileSection 获取指定小节(在win.ini文件中)所有项名和值的一个列表GetProfileString 为win.ini初始化文件中指定的条目取得字串GetShortPathName 获取指定文件的短路径名GetSystemDirectory 取得Windows系统目录(即System目录)的完整路径名GetTempFileName 这个函数包含了一个临时文件的名字,它可由应用程序使用GetTempPath 获取为临时文件指定的路径GetVolumeInformation 获取与一个磁盘卷有关的信息GetWindowsDirectory 获取Windows目录的完整路径名hread 参考lreadhwrite 参考lwrite函数lclose 关闭指定的文件lcreat 创建一个文件llseek 设置文件中进行读写的当前位置LockFile 锁定文件的某一部分,使其不与其他应用程序共享LockFileEx 与LockFile相似,只是它提供了更多的功能lopen 以二进制模式打开指定的文件lread 将文件中的数据读入内存缓冲区lwrite 将数据从内存缓冲区写入一个文件LZClose 关闭由LZOpenFile 或LZInit函数打开的一个文件LZCopy 复制一个文件LZInit 这个函数用于初始化内部缓冲区LZOpenFile 该函数能执行大量不同的文件处理,而且兼容于压缩文件LZRead 将数据从文件读入内存缓冲区LZSeek 设置一个文件中进行读写的当前位置MapViewOfFile 将一个文件映射对象映射到当前应用程序的地址空间MoveFile 移动文件OpenFile 这个函数能执行大量不同的文件操作OpenFileMapping 打开一个现成的文件映射对象QueryDosDevice 在Windows NT中,DOS设备名会映射成NT系统设备名。
该函数可判断当前的设备映射情况ReadFile 从文件中读出数据ReadFileEx 与ReadFile相似,只是它只能用于异步读操作,并包含了一个完整的回调RegCloseKey 关闭系统注册表中的一个项(或键)RegConnectRegistry 访问远程系统的部分注册表RegCreateKey 在指定的项下创建或打开一个项RegCreateKeyEx 在指定项下创建新项的更复杂的方式。
在Win32环境中建议使用这个函数RegDeleteKey 删除现有项下方一个指定的子项RegDeleteValue 删除指定项下方的一个值RegEnumKey 枚举指定项的子项。
在Win32环境中应使用RegEnumKeyEx RegEnumKeyEx 枚举指定项下方的子项RegEnumValue 枚举指定项的值RegFlushKey 将对项和它的子项作出的改动实际写入磁盘RegGetKeySecurity 获取与一个注册表项有关的安全信息RegLoadKey 从以前用RegSaveKey函数创建的一个文件里装载注册表信息RegNotifyChangeKeyValue 注册表项或它的任何一个子项发生变化时,用这个函数提供一种通知机制RegOpenKey 打开一个现有的注册表项RegOpenKeyEx 打开一个现有的项。
在win32下推荐使用这个函数RegQueryInfoKey 获取与一个项有关的信息RegQueryValue 取得指定项或子项的默认(未命名)值RegQueryValueEx 获取一个项的设置值RegReplaceKey 用一个磁盘文件保存的信息替换注册表信息;并创建一个备份,在其中包含当前注册表信息RegRestoreKey 从一个磁盘文件恢复注册表信息RegSaveKey 将一个项以及它的所有子项都保存到一个磁盘文件RegSetKeySecurity 设置指定项的安全特性RegSetValue 设置指定项或子项的默认值RegSetValueEx 设置指定项的值RegUnLoadKey 卸载指定的项以及它的所有子项RemoveDirectory 删除指定目录SearchPath 查找指定文件SetCurrentDirectory 设置当前目录SetEndOfFile 针对一个打开的文件,将当前文件位置设为文件末尾SetFileAttributes 设置文件属性SetFilePointer 在一个文件中设置当前的读写位置SetFileTime 设置文件的创建、访问及上次修改时间SetHandleCount 这个函数不必在win32下使用;即使使用,也不会有任何效果SetVolumeLabel 设置一个磁盘的卷标(Label)SystemTimeToFileTime 根据一个FILETIME结构的内容,载入一个SYSTEMTIME结构UnlockFile 解除对一个文件的锁定UnlockFileEx 解除对一个文件的锁定UnmapViewOfFile 在当前应用程序的内存地址空间解除对一个文件映射对象的映射VerFindFile 用这个函数决定一个文件应安装到哪里VerInstallFile 用这个函数安装一个文件VerLanguageName 这个函数能根据16位语言代码获取一种语言的名称VerQueryValue 这个函数用于从版本资源中获取信息WriteFile 将数据写入一个文件WriteFileEx 与WriteFile类似,只是它只能用于异步写操作,并包括了一个完整的回调WritePrivateProfileSection 为一个初始化文件(.ini)中指定的小节设置所有项名和值WritePrivateProfileString 在初始化文件指定小节内设置一个字串WriteProfileSection 为Win.ini初始化文件中一个指定的小节设置所有项名和值WriteProfileString 在Win.ini初始化文件指定小节内设置一个字串4. API之打印函数AbortDoc 取消一份文档的打印AbortPrinter 删除与一台打印机关联在一起的缓冲文件AddForm 为打印机的表单列表添加一个新表单AddJob 用于获取一个有效的路径名,以便用它为作业创建一个后台打印文件。