Delphi Math单元函数
- 格式:docx
- 大小:21.18 KB
- 文档页数:7
Delphi类型转换。
Chr 将一个有序数据转换为一个ANSI字符Ord 将一个有序类型值转换为它的序号Round 转换一个实型值为四舍五入后的整型值Trunc 转换一个实型值为小数截断后的整型值Int 返回浮点数的整数部分IntToStr 将数值转换为字符串IntToHex 将数值转换为十六进制数字符串StrToInt 将字符串转换为一个整型数,如字符串不是一个合法的整型将引发异常StrToIntDef 将字符串转换为一个整数,如字符串不合法返回一个缺省值Val 将字符串转换为一个数字(传统Turbo Pascal例程用于向后兼容)Str 将数字转换为格式化字符串(传统Turbo Pascal例程用于向后兼容)StrPas 将零终止字符串转换为Pascal类型字符串,在32位Delphi中这种类型转换是自动进行的StrPCopy 拷贝一个Pascal类型字符串到一个零终止字符串, 在32位Delphi中这种类型转换是自动进行的StrPLCopy 拷贝Pascal类型字符串的一部分到一个零终止字符串Delphi 7.0常用函数由一句或多句代码组成,可以实现某个特定的功能。
使用函数可以使代码更加易读、易懂,加快编程速度及减少重复代码。
过程与函数类似,过程与函数最重要的区别在于,过程没有返回值,而函数能有返回值。
在Delphi 7.0中,已为我们定义好了非常多的函数,大致分类有6种:数据类型转换函数、字符串、数组操作函数、文件、磁盘操作函数、内存、指针操作函数、数学运算函数、日期函数。
在Delphi中调用函数,一般情况下可以直接使用函数即可,但由于有一些函数未包含在Uses中列出的单元中(默认单元有Windows,Messages,SysUtils,Variants,Classes,Graphics, Controls,Forms,Dialogs,所以需要我们手动添加单元。
比如,MidStr函数就未包含在这些单元中,MidStr所属单元在StrUtils中,因此我们将StrUtils添加Uses中即可。
Delphi7.0的常用函数与过程2.1.4 Delphi 7中的运算符与表达式Delphi 7 有8 类运算符,本章主要学习算术运算符、字符串运算符和位运算符。
其他运算符将在以后的章节中学习。
1.算术运算符算术运算符是用户最熟悉的,类似算术中的加减乘除等。
Delphi 7中有8个算术运算符,具体含义如下。
(1)取正运算符“+”:单目运算符,表示对一个数值型数据取正,例如+5的值为5。
另外,取正运算符可以省略。
(2)取负运算符“-”:也是单目运算符。
例如对5取负,其值为-5。
(3)加法运算符“+”:与数学上的加法相同。
加法运算符与取正运算符符号相同,但含义不同。
例如3+5的值为8。
(4)减法运算符“-”:与数学上的减法含义相同。
也请注意减法运算符与取负运算符的异同。
(5)乘法运算符“*”:表示对两个数值型数据相乘,与数学中的乘法相同。
例如:3*5 的值为15。
(6)除法运算符“/”:与数学上的除法含义相同。
例如3/5 的值为“0.6”。
另外,除法运算的结果总是实型数据。
(7)整除运算符“div”:只能对两个整数进行除法运算,结果为整型数据。
例如5 div 3 的值为1,而“5 div 2.0”是不合法的。
(8)取余运算符“mod”:对两个整数相除,结果为余数。
例如5 mod 3的值为2。
1,数学类函数包括绝对值函数,取整数函数,取小数函数,平方函数,平方根函数,三角函数,指数函数,对数函数和随机函数等。
(1)绝对值函数:Abs(x) 返回x的绝对值,x是整型或实型数据例:x := Abs(-1); //这是一个赋值语句,先计算赋值号右边函数的值(为1)再赋给x.(2)取整数函数例:(3)取小数函数返回x的小数部分,x为实型数据例:(4)平方函数返回实型数据x的平方值,x为实型数据(5)平方根函数返回非负实数x的算术平方根,x为非负实数,返回值也为非负实数例:(6)三角函数返回以弧度为单位的x的正弦函数值,x的单位为弧度返回以弧度为单位的x的余弦函数值,x的单位为弧度ArcTan(x):Extended;返回x的反正切函数值,x的单位为弧度例:(7)指数函数返回值为e x,参数x为实型数据例:(8)自然对数函数Ln(x) := Real;返回x的自然对数值,参数x为正实数,其它对数函数可以由换底公式导出。
DELPHI常用过程和函数DELPHI常用过程和函数2010-02-16 21:25一、数学运算函数1、绝对值函数function Abs(x);返回参数X的绝对值。
参数X可以是整型或实型,返回值为非负的整数实数;2、平方与平方根函数function Sqr(x:Extended):Extended;参数X实型表达式,返回X的平方,返回值也是实型数据。
function Sqrt(x:Extended):Extended;参数X非负实型表达式,返回X的算术平方根,返回值也是实型数据。
3、三角函数function Sin(x:Extended):Extended;function Cos(x:Extended):Extended;function ArcTan(x:Extended):Extended;参数X为数值表达式。
4、取整数部分与取小数部分函数function Int(x:Extended):Extended;参数X实行表达式,返回X的整数部分。
function Frac(x:Extended):Extended;参数X实行表达式,返回X的小数部分。
5、取整函数function Trunc(x:Extended):Int64;参数X实行表达式,返回不大于X的整数部分。
function Roundc(x:Extended):Int64;参数X实行表达式,返回对X的小数部分进行四舍五入后的整数部分。
6、指数函数和对数函数function Exp(x:Real):Real;参数X为实型表达式,返回e x,返回值也是实型数据。
function Ln(x:Real):Real;参数X为实型表达式,返回X的自然对数值,返回值也是实型数据。
7、随机函数function Random[(Range:Integer)];返回一个大于或等于0且小于参数Range的随机实数,如果缺省参数Range则返回大于或等于0且小于1的随机实数。
************************系统实用例程******************************** Delphi / Kylix 跨平台运行时库(System Utilities)Copyright (c) 1995-2002 Borland Softwrare Corporation******************************************************************* SysUtils单元;1.常量(Const)1)文件打开方式{$以下用于Linux环境}fmOpenRead = O_RDONLY;fmOpenWrite = O_WRONLY;fmOpenReadWrite = O_RDWR;// fmShareCompat 不被支持fmShareExclusive = $0010;fmShareDenyWrite = $0020;// fmShareDenyRead 不被支持fmShareDenyNone = $0030;{$ENDIF}{$以下用于MsWindows}fmOpenRead = $0000;fmOpenWrite = $0001;fmOpenReadWrite = $0002;fmShareCompat = $0000 platform; // DOS 兼容模式不portablefmShareExclusive = $0010;fmShareDenyWrite = $0020;fmShareDenyRead = $0030 platform; // 只写在所有平台上都不被支持fmShareDenyNone = $0040;{$ENDIF}2)文件属性faReadOnly = $00000001 platform;faHidden = $00000002 platform;faSysFile = $00000004 platform;faV olumeID = $00000008 platform;faDirectory = $00000010;faArchive = $00000020 platform;faSymLink = $00000040 platform;faAnyFile = $0000003F;3)时间单位HoursPerDay = 24; 每天24小时MinsPerHour = 60; 每小时60分SecsPerMin = 60; 每分钟60秒MSecsPerSec = 1000; 每秒1000毫秒MinsPerDay = HoursPerDay * MinsPerHour; 每天的分钟数SecsPerDay = MinsPerDay * SecsPerMin; 每天秒数MSecsPerDay = SecsPerDay * MSecsPerSec; 每天毫秒数DateDelta = 693594; 每天介于1/1/0001 和12/31/1899 之间UnixDateDelta = 25569; { 介于TDateTime 基数(12/31/1899) 和Unix time_t 基数(1/1/1970)之间的天数}2.类型定义(type)TSysCharSet = set of Char; //设置字符类型标准:所有ANSI字符的集合TIntegerSet = set of 0..SizeOf(Integer) * 8 - 1; { 设定整数的访问类型:0-31的整数集合} //类型转换// WordRec使访问一个Word类型变量或者其他16位变量(SmallInt)的高位和低位字节变得更容易WordRec = packed recordcase Integer of0: (Lo, Hi: Byte);1: (Bytes: array [0..1] of Byte);end;LongRec使访问一个LongWord类型变量或者其它32位变量(Single)高位和低位字变得更容易。
一、使用单元:Use :EXCEL 2000, ComObj二、定义var ExcelApp,Sheet,Range: V ariant;注释:ExcelApp 为定义的Excel 对象Sheet 为定义的工作表(Sheet)对象Range 为定义的工作表范围三、关于Excel 对象创建初始化以及工作表、工作表范围的初始化1. 创建excel对象:ExcelApp := CreateOleObject( 'Excel.Application' );2. 显示当前窗口:ExcelApp.V isible := True;3. 更改Excel 标题栏:ExcelApp.Caption := '应用程序调用Microsoft Excel';4. 添加新工作簿:ExcelApp.WorkBooks.Add;5 打开已存在的工作簿:ExcelApp.WorkBooks.Open(FilePath);6.设置工作簿默认工作表张数ExcelApp.SheetsInNewWorkbook := 1;7.设置工作表名称ExcelApp.Workbooks[WorkbookNum].WorkSheets[WorkSheetNum].Name := PName;8.工作表初始化Sheet:= ExcelApp.Workbooks[WorkbookNum].WorkSheets[WorkSheetNum];9.工作表范围初始化Range := Sheet.Range['A1:DL1'] ;10.设置第2个工作表为活动工作表:ExcelApp.WorkSheets[2].Activate;或ExcelApp.WorksSheets[ 'Sheet2' ].Activate;三、单元格赋值设置数值类型1. 给单元格赋值:ExcelApp.Cells[row, column].V alue := '第一行第四列';或Sheet.Cells[row, column] := ‘第一行第四列’;2 清除第一行第四列单元格公式:ExcelApp.ActiveSheet.Cells[row,column].ClearContents;或Sheet.Cells[row,column]. ClearContents3设置单元格数值类型为文字型Range.NumberFormatLocal := '@';四、设置列宽和行高1. 设置指定列的宽度(单位:字符个数):ExcelApp.ActiveSheet.Columns[column].ColumnsWidth := 5;或Sheet.Columns[column].ColumnWidth := 5;2.设置指定行的高度(单位:磅)(1磅=0.035厘米)ExcelApp.ActiveSheet.Rows[row].RowHeight := 1/0.035; // 1厘米或Sheet. Rows [row]. RowHeight:= 1/0.035;五、对齐方式1.水平对齐Range.HorizontalAlignment:=xlCenter; 居中Range.HorizontalAlignment:=xlLeft;居左Range.HorizontalAlignment:=xlRight;居右或Sheet.Cells[row,column].HorizontalAlignment:=xlCenter; 居中Sheet.Cells[row,column].HorizontalAlignment:=xlLeft;居左Sheet.Cells[row,column].HorizontalAlignment:=xlRight;居右2.垂直对齐Range. V erticalAlignment:=xlCenter; 居中Range. V erticalAlignment:= xltop;顶端对齐Range. V erticalAlignment:= xlbottomfont;底部对齐或Sheet.Cells[row,column]. VerticalAlignment:=xlCenter; 居中Sheet.Cells[row,column]. VerticalAlignment:= xltop;顶端对齐Sheet.Cells[row,column]. VerticalAlignment:= xlbottomfont; 底部对齐六、文字控制1.自动换行Range.WrapText:=true;或Sheet.Cells[row,column]. WrapText:=true;2.合并单元格Sheet.range['A17:G17'].Merge;3.跨越合并Sheet.range['C27:D34'].Merge(true);七、字型设置1.设置字体大小Range.Characters.Font.Size := 10;或Sheet.Cells[row,column].Characters.Font.Size := 10;2.字体加重Range.Characters.Font. Bold:= true;或Sheet.Cells[row,column].Characters.Font. Bold:= true;3.字体倾斜Range.Characters.Font. Italic:= true;或Sheet.Cells[row,column].Characters.Font. Italic:= true;4.字体:=’楷体_GB2312'或Sheet.Cells[row,column].Characters.Font. Name:=’楷体_GB2312’5字体样式(常规,斜体,粗体,粗斜体)Range.Characters.Font.FontStyle:=’常规'或Sheet.Cells[row,column].Characters.Font.FontS tyle:=’常规'6.下划线Range.Characters.Font.UnderLine := True;或Sheet.Cells[row,column].Characters.Font.UnderLine := True;八、分页符操作1.在第8行之前插入分页符:ExcelApp.WorkSheets[1].Rows.PageBreak := 1;或Sheet. Rows. PageBreak := 1;或Range. Rows. PageBreak := 1;2.在第8列之前删除分页符:ExcelApp.ActiveSheet.Columns[4].PageBreak := 0;或Sheet.Columns[4]. PageBreak := 0;或Range.Columns[4].PageBreak :=0;九、关于边框的操作:Border :1-左2-右3-顶4-底5-斜( \ ) 6-斜( / )1.指定边框线宽度:ExcelApp.ActiveSheet.Range[ 'B3:D4' ].Borders[Border].Weight := 3;或Sheet. Borders[Border].Weight := 3;或Range Borders[Border].Weight := 3;2.边框线线条形状Sheet.Borders[Border].linestyle :=1;或Range.Borders[Border]. Linestyle := 1;Linestyle 1:实线2 虚线12 双横线十、关于颜色1. 设置单元格背景色Sheet.Cells[row,column].Interior.ColorIndex := 38;或Range.Interior.ColorIndex := 38;2.字体颜色Range.Characters.Font.Colorindex:=6;或Sheet.Cells[row,column].Characters.Font.Colorindex:=6 Colorindex的值十一、冻结窗口Sheet.Cells[2,3].select;ExcelApp.ActiveWindow.FreezePanes := True;十二、打印设置1.页眉:Sheet.PageSetup.CenterHeader := '报表演示';2.页脚:Sheet.PageSetup.CenterFooter := '第&P页';3页眉到顶端边距2cm:Sheet.PageSetup.HeaderMargin := 2/0.035;4.页脚到底端边距3cm:Sheet.PageSetup.HeaderMargin := 3/0.035;5.顶边距2cm:Sheet.PageSetup.TopMargin := 2/0.035;6.底边距2cm:Sheet.PageSetup.BottomMargin := 2/0.035;7.左边距2cm:Sheet.PageSetup.LeftMargin := 2/0.035;8.右边距2cm:Sheet.PageSetup.RightMargin := 2/0.035;9.页面水平居中:Sheet.PageSetup.CenterHorizontally := 2/0.035;10.页面垂直居中:Sheet.PageSetup.CenterV ertically := 2/0.035;11.打印单元格网线:Sheet.PageSetup.PrintGridLines := True;12缩放比例Sheet.PageSetup.zoom := 75;13横向打印Sheet.PageSetup.Orientation:= xllandscape;14 纵向打印Sheet.PageSetup.Orientation:=xlportrait;15.设置打印标题行Sheet.PageSetup.PrintTitleRows := Sheet.Rows['1:3'].Address ;Sheet.PageSetup.PrintTitleColumns := Sheet.Rows[3].Address;16.打印预览工作表:Sheet.PrintPreview;17 打印输出工作表:Sheet.PrintOut;十三、拷贝操作:1.拷贝整个工作表:ed.Range.Copy;2. b.拷贝指定区域:Sheet.Range[ 'A1:E2' ].Copy;3.从A1位置开始粘贴:Sheet.Range.[ 'A1' ].PasteSpecial;4.从文件尾部开始粘贴:Sheet.Range.PasteSpecial;十四、行列的插入删除1. 插入一行或一列:a. ExcelApp.ActiveSheet.Rows[2].Insert;b. ExcelApp.ActiveSheet.Columns[1].Insert;2. 删除一行或一列:a. ExcelApp.ActiveSheet.Rows[2].Delete;b. ExcelApp.ActiveSheet.Columns[1].Delete;十五、Excel保存关闭1.工作表保存:if not ExcelApp.ActiveWorkBook.Saved thenExcelApp.ActiveSheet.PrintPreview;2.工作表另存为:ExcelApp. SaveAs ( filepath);3 放弃存盘:ExcelApp.ActiveWorkBook.Saved := True;4. 关闭工作簿:ExcelApp.WorkBooks.Close;5. 退出Excel:ExcelApp.Quit;6. 工作表关闭ExcelApp.WorkBooks.Close ;十六、其他1. 已经使用的行数edRange.Rows.Count;(三)使用Delphi控制Excel二维图在Form中分别放入ExcelApplication,ExcelWorkbook和ExcelWorksheet V ar asheet1,achart,range:variant;1)选择当第一个工作簿第一个工作表asheet1:=ExcelApplication1.Workbooks[1].Worksheets[1];2)增加一个二维图achart:=asheet1.chartobjects.add(100,100,200,200);3)选择二维图的形态achart.chart.chartype:=4;4)给二维图赋值series:=achart.chart.seriescollection;range:=sheet1!r2c3:r3c9;series.add(range,true);5)加上二维图的标题achart.Chart.HasTitle:=True;achart.Chart.ChartTitle.Characters.Text:=’Excel二维图’6)改变二维图的标题字体大小achart.Chart.ChartTitle.Font.size:=6;7)给二维图加下标说明achart.Chart.Axes(xlCategory,xlPrimary).HasTitle:=True;achart.Chart.Axes(xlCategory,xlPrimary).AxisTitle.Characters.Text:=’下标说明’;8)给二维图加左标说明achart.Chart.Axes(xlValue,xlPrimary).HasTitle:=True;achart.Chart.Axes(xlValue,xlPrimary).AxisTitle.Characters.Text:=’左标说明’;9)给二维图加右标说明achart.Chart.Axes(xlValue,xlSecondary).HasTitle:=True;achart.Chart.Axes(xlValue,xlSecondary).AxisTitle.Characters.Text:=’右标说明’;10)改变二维图的显示区大小achart.Chart.PlotArea.Left:=5;achart.Chart.PlotArea.Width:=223;achart.Chart.PlotArea.Height:=108;11)给二维图坐标轴加上说明achart.chart.seriescollection[1].NAME:=’坐标轴说明’;。
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 函数按钮上的图象。
_HELP函数集●●●●●●●------------------------------------------------------------------abs(x) 绝对值arctan(x) 反正切cos(x) 传回馀弦函数值exp(x) e的x次幂frac(x) 取小数部分int(x) 取整ln(x) 自然对数sin(x) 传回正弦函数值sqr(x) x*xsqrt(x) 平方根其它pred(x) pred('D')='C', pred(true)=1;succ(x) succ('Y')='Z', succ(pred(x))=xord(x) 求x在字符集中的序号,如ord('A')=65chr(x) chr(65)='A'round(x) 四舍五入trunc(x) trunc(4.8)=4,trunc('-3.6')=-3upcase(x) upcase('a')='A'hi(I) hi($2A30)=$2Alo(I) lo($2A30)=$30random(n) 产生[0,n)间的随机整数sizeof(name) 求出某类型或变量在内存中占用的字节数swap(num) swap($3621)=$2136================================Arithmetic routines 数学运算================================Abs 绝对值---------------------------------------------------------Unit System函数原型function Abs(X);说明X为整数or实数.范例varr: Real;i: Integer;beginr := Abs(-2.3); { 2.3 }i := Abs(-157); { 157 }end;----------------------------------------------------------ArcTan 三角函数范例Cosvar R: Extended;beginR := Cos(Pi);end;----------------------------------------------------------Sin----------------------------------------------------------范例varR: Extended;S: string;beginR := Sin(Pi);Str(R:5:3, S);Canvas.TextOut(10, 10, 'The Sin of Pi is ' + S);end;----------------------------------------------------------Unit System函数原型function ArcTan(X: Extended): Extended;函数原型function Cos(X: Extended): Extended;函数原型function Sin(X: Extended): Extended;----------------------------------------------------------说明X为径度.Tan(x) === Sin(x) / Cos(x)ArcSin(x) = ArcTan (x/sqrt (1-sqr (x)))ArcCos(x) = ArcTan (sqrt (1-sqr (x)) /x)左边这三个不是函数,而是右边运算求得. 范例varR: Extended;beginR := ArcTan(Pi);end;范例varR: Extended;S: string;beginR := Sin(Pi);Str(R:5:3, S);Canvas.TextOut(10, 10, 'The Sin of Pi is ' + S);end;Frac 求一个实数的小数部份----------------------------------------------------------Unit System函数原型function Frac(X: Real): Real;说明X为实数.范例varR: Real;beginR := Frac(123.456); { 0.456 }R := Frac(-123.456); { -0.456 }end;------------------------------------------Int 求一个实数的整数部份------------------------------------------Unit System函数原型function Int(X: Real): Real;说明X为实数.范例varR: Real;beginR := Int(123.456); { 123.0 }R := Int(-123.456); { -123.0 }end;------------------------------------------Pi 就是数学的Pi------------------------------------------Unit System函数原型function Pi: Extended;说明它是一个函数,但我们就把它当作是预设的变数来用吧!Pi= 3.1415926535897932385------------------------------------------Sqr X的平方-----------------------------------------范例varS, Temp: string;beginStr(Sqr(5.0):3:1, Temp);S := '5 squared is ' + Temp + #13#10;Str(Sqrt(2.0):5:4, Temp);S := S + 'The square root of 2 is ' + Temp;MessageDlg(S, mtInformation, [mbOk], 0);end;-----------------------------------------Sqrt X的平方根------------------------------------------Unit System函数原型function Sqr(X: Extended): Extended;函数原型function Sqrt(X: Extended): Extended;范例varS, Temp: string;beginStr(Sqr(5.0):3:1, Temp);S := '5 squared is ' + Temp + #13#10;Str(Sqrt(2.0):5:4, Temp);S := S + 'The square root of 2 is ' + Temp;MessageDlg(S, mtInformation, [mbOk], 0);end;------------------------------------------Ln 自然对数------------------------------------------范例vare : real;S : string;begine := Exp(1.0);Str(ln(e):3:2, S);S := 'e = ' + FloatToStr(e) + '; ln(e) = ' + S;Canvas.TextOut(10, 10, S);end;----------------------------------------Exp 指数------------------------------------------Unit System函数原型function Ln(X: Real): Real;函数原型function Exp(X: Real): Real;范例vare : real;S : string;begine := Exp(1.0);Str(ln(e):3:2, S);S := 'ln(e) = ' + S;Canvas.TextOut(10, 10, S);end;------------------------------------------Date and time routines 日期及时间函数------------------------------------------Date 传回目前的日期Unit SysUtils函数原型function Date: TDateTime;范例procedure TForm1.Button1Click(Sender: TObject);beginLabel1.Caption := 'Today is ' + DateToStr(Date);end;------------------------------------------DateTimeToStr 日期时间转换成内定型字串(1996/12/20 09:12:20 PM) ------------------------------------------Unit SysUtils函数原型function DateTimeToStr(DateTime: TDateTime): string;范例procedure TForm1.Button1Click(Sender: TObject);beginLabel1.Caption := DateTimeToStr(Now);end;--------------------------------------------------------DateTimeToString 日期时间转换成自定型字串-------------------------------------------------------Unit SysUtils函数原型procedure DateTimeToString(var Result: string; const Format:string; DateTime: TDateTime);范例procedure TForm1.FormCreate(Sender: TObject);vars:string;beginDateTimeToString(s,'dddd,mmmm d,yyyy "at" hh:mmAM/PM',Now);Label1.Caption :=s;end;结果星期五,十二月20,1996 at 09:20 PM-----------------------------------------------------------------------------**** Format格式叁考下面.FormatDateTime.--------------------------------------------------------DateToStr 日期转换成内定型字串.(1996/12/20)--------------------------------------------------------Unit SysUtils函数原型function DateToStr(Date: TDateTime): string;范例procedure TForm1.Button1Click(Sender: TObject);beginLabel1.Caption := 'Today is ' + DateToStr(Date);end;# Date, DateToStr Example--------------------------------------------------------DayOfWeek 求叁数日期是星期几.--------------------------------------------------------Unit SysUtils函数原型function DayOfWeek(Date: TDateTime): Integer;说明传回值是一整数,1~7.星期日为1.范例procedure TForm1.Button1Click(Sender: TObject);varADate: TDateTime;days: array[1..7] of string;begindays[1] := 'Sunday';days[2] := 'Monday';days[3] := 'Tuesday';days[4] := 'Wednesday';days[5] := 'Thursday';days[6] := 'Friday';days[7] := 'Saturday';ADate := StrToDate(Edit1.Text);ShowMessage(Edit1.Text + ' is a ' + days[DayOfWeek(ADate)];end;# StrToDate, DayOfWeek Example--------------------------------------------------------DecodeDate 将TDateTime型态的日期变数,转为Word型态. --------------------------------------------------------范例procedure TForm1.Button1Click(Sender: TObject);varPresent: TDateTime;Year, Month, Day, Hour, Min, Sec, MSec: Word;beginPresent:= Now;DecodeDate(Present, Year, Month, Day);Label1.Caption := 'Today is Day ' + IntToStr(Day) + ' of Month '+ IntToStr(Month) + ' of Year ' + IntToStr(Year);DecodeTime(Present, Hour, Min, Sec, MSec);Label2.Caption := 'The time is Minute ' + IntToStr(Min) + ' of Hour ' + IntToStr(Hour);end;# DecodeDate, DecodeTime Example--------------------------------------------------------DecodeTime 将TDateTime型态的时间变数,转为Word型态.--------------------------------------------------------Unit SysUtils函数原型procedure DecodeDate(Date: TDateTime; var Year, Month,Day: Word);函数原型procedure DecodeTime(Time: TDateTime; var Hour, Min, Sec,MSec: Word);范例procedure TForm1.Button1Click(Sender: TObject);varPresent: TDateTime;Year, Month, Day, Hour, Min, Sec, MSec: Word;beginPresent:= Now;DecodeDate(Present, Year, Month, Day);Label1.Caption := 'Today is Day ' + IntToStr(Day) + ' ofMonth ' + IntToStr(Month) + ' of Year ' + IntToStr(Year);DecodeTime(Present, Hour, Min, Sec, MSec);Label2.Caption := 'The time is Minute ' +IntToStr(Min) + ' ofHour ' + IntToStr(Hour);end;--------------------------------------------------------EncodeDate 将Word型态的日期变数,转为TDateTime型态.--------------------------------------------------------范例procedure TForm1.Button1Click(Sender: TObject);varMyDate: TDateTime;beginMyDate := EncodeDate(StrToInt(Edit1.T ext), StrToInt(Edit2.T ext), StrToInt(Edit3.Text));Label1.Caption := DateToStr(MyDate);end;-------------------------------------------------------EncodeTime 将Word型态的时间变数,转为TDateTime型态.--------------------------------------------------------Unit SysUtils函数原型function EncodeDate(Year, Month, Day: Word): TDateTime;函数原型function EncodeTime(Hour, Min, Sec, MSec: Word):TDateTime;范例procedure TForm1.Button1Click(Sender: TObject);varMyDate: TDateTime;MyTime: TDateTime;beginMyDate := EncodeDate(83, 12, 31);Label1.Caption := DateToStr(MyDate);MyTime := EncodeTime(0, 45, 45, 7);Label2.Caption := TimeToStr(MyTime);end;范例procedure TForm1.Button1Click(Sender: TObject);varMyTime: TDateTime;beginMyTime := EncodeTime(0, 45, 45, 7);Label1.Caption := TimeToStr(MyTime);end;--------------------------------------------------------FormatDateTime 将日期时间依Format的格式转换给一字串.--------------------------------------------------------Unit SysUtils函数原型function FormatDateTime(const Format: string; DateTime:TDateTime): string;**** 类似DateTimeToString.Format格式c 内定值ShortDateFormat的格式.(1996/12/20 09:20:15 PM).d 日期,前面不补0.(1-31)dd 日期,前面补0.(01-31)ddd 星期.(星期日).Dddd 中文2.01版,同上.ddddd 日期.(1996/12/20)dddddd 日期.(1996年12月20日)m 月份,前面不补0.(1-12)mm 月份,前面补0.(01-12)mmm 中文显示.(十二月)mmmm 中文2.01版,同上.Yy 年度.(00-99)yyyy 年度.(0000-9999)h 小时.(0-23)hh 小时.(00-23)n 分钟.(0-59)nn 分钟.(00-59)s 秒钟.(0-59)ss 秒钟.(00-59)t 时间.(09:20 PM)tt 时间.(09:20:15 PM)am/pm 单独显示am or pm.(若大写,则显示大写)a/p 单独显示a or p.范例The following example assigns 'The meeting is on Wednesday, February 15, 1995 at 10:30 AM' tothe string variable S.S := FormatDateTime('"The meeting is on " dddd, mmmm d, yyyy, " at " hh:mm AM/PM', StrToDateTime('2/15/95 10:30am'));//???--------------------------------------------------------Now 传回目前的日期时间.--------------------------------------------------------Unit SysUtils函数原型function Now: TDateTime;范例procedure TForm1.Button1Click(Sender: TObject);beginLabel1.Caption := DateTimeToStr(Now);end;# Now, DateTimeToStr Example--------------------------------------------------------StrToDate 将字串转为TDateTime型态的日期.--------------------------------------------------------Unit SysUtils函数原型function StrToDate(const S: string): TDateTime;范例procedure TForm1.Button1Click(Sender: TObject);varADate: TDateTime;beginADate := StrToDate(Edit1.Text);Label1.Caption := DateToStr(ADate);end;范例procedure TForm1.Button1Click(Sender: TObject);varADate: TDateTime;days: array[1..7] of string;begindays[1] := 'Sunday';days[2] := 'Monday';days[3] := 'Tuesday';days[4] := 'Wednesday';days[5] := 'Thursday';days[6] := 'Friday';days[7] := 'Saturday';ADate := StrToDate(Edit1.Text);ShowMessage(Edit1.Text + ' is a ' + days[DayOfWeek(ADate)];end;# StrToDate, DayOfWeek Example--------------------------------------------------------StrToDateTime 将字串转为TDateTime型态的日期时间.--------------------------------------------------------Unit SysUtils函数原型function StrToDateTime(const S: string): TDateTime; 范例procedure TForm1.Button1Click(Sender: TObject);varADateAndTime: TDateTime;beginADateAndTime := StrToDateTime(Edit1.Text);Table1.FieldByName('TimeStamp').AsDateTime := ADateAndTime; end;--------------------------------------------------------StrToTime 将字串转为TDateTime型态的时间. --------------------------------------------------------Unit SysUtils函数原型function StrToTime(const S: string): TDateTime;范例procedure TForm1.Button1Click(Sender: TObject);varATime: TDateTime;beginATime := StrToTime(Edit1.Text);if ATime < 0.50 thenShowMessage('Good Morning')elseShowMessage('Good Afternoon');end;--------------------------------------------------------Time 传回目前的时间.--------------------------------------------------------Unit SysUtils函数原型function Time: TDateTime;范例procedure TForm1.Timer1Timer(Sender: TObject);varDateTime : TDateTime;str : string;beginDateTime := Time; // store the current date and timestr := TimeToStr(DateTime); // convert the time into a stringCaption := str; // display the time on the form's caption{ Note This could have been done with the following line of code: Caption := TimeToStr(Time); }end;# Time, TimeToStr Example--------------------------------------------------------TimeToStr 时间转换成内定型字串.(09:20:15 PM) --------------------------------------------------------Unit SysUtils函数原型function TimeToStr(Time: TDateTime): string; GetMem procedure 配置记忆体程序New 配置指位器P的记忆体空间,大小为P所指型态的大小.--------------------------------------------------------Dispose 释放New所配置的记忆体.--------------------------------------------------------Unit System函数原型procedure New(var P: Pointer);函数原型procedure Dispose(var P: Pointer);范例typePListEntry = ^TListEntry;TListEntry = recordNext: PListEntry;Text: string;Count: Integer;end;varList, P: PListEntry;begin...New(P);P^.Next := List;P^.Text := 'Hello world';P^.Count := 1;List := P;...Dispose(P);…end;范例typeStr18 = string[18];varP: ^Str18;beginNew(P);P^ := 'Now you see it...';Dispose(P); { Now you don't... }end;--------------------------------------------------------GetMem 配置指位器P的记忆体空间,大小可自行设定. --------------------------------------------------------范例varF: file;Size: Integer;Buffer: PChar;beginAssignFile(F, 'test.txt');Reset(F, 1);trySize := FileSize(F);GetMem(Buffer, Size);tryBlockRead(F, Buffer^, Size);ProcessFile(Buffer, Size);finallyFreeMem(Buffer);end;finallyCloseFile(F);end;end;--------------------------------------------------------FreeMem 释放GetMem所配置的记忆体.--------------------------------------------------------Unit System函数原型procedure GetMem(var P: Pointer; Size: Integer);函数原型procedure FreeMem(var P: Pointer[; Size: Integer]);范例varF: file;Size: Integer;Buffer: PChar;beginAssignFile(F, 'test.txt');Reset(F, 1);trySize := FileSize(F);GetMem(Buffer, Size);tryBlockRead(F, Buffer^, Size);ProcessFile(Buffer, Size);finallyFreeMem(Buffer);end;finallyCloseFile(F);end;end;====================================File-management routines 档案管理常式====================================--------------------------------------------------------ChangeFileExt变更档案的副档名--------------------------------------------------------Unit SysUtils函数原型function ChangeFileExt(const FileName, Extension: string):string;范例procedure TForm1.Button1Click(Sender: TObject);varS: String;P1:String;P2:String;beginP1:='abc.txt';P2:='.ini';S := ChangeFileExt(P1,P2);Label1.Caption:=S;end;结果S== 'abc.ini'P1:='abc'P2:='.ini'S== 'abc.ini'P1:='c:\windows\abc.txt'P2:='.ini'S=='c:\windows\abc.ini'P1:='abc.txt'P2:='ini'S=='abcini'**注意:P2的第一位元必须有一点'.ini'范例procedure TForm1.ConvertIcon2BitmapClick(Sender: TObject);vars : string;Icon: TIcon;beginOpenDialog1.DefaultExt := '.ICO';OpenDialog1.Filter := 'icons (*.ico)|*.ICO';OpenDialog1.Options := [ofOverwritePrompt, ofFileMustExist, ofHideReadOnly ]; if OpenDialog1.Execute thenbeginIcon := TIcon.Create;tryIcon.Loadfromfile(OpenDialog1.FileName);s:= ChangeFileExt(OpenDialog1.FileName,'.BMP');Image1.Width := Icon.Width;Image1.Height := Icon.Height;Image1.Canvas.Draw(0,0,Icon);Image1.Picture.SaveToFile(s);ShowMessage(OpenDialog1.FileName + ' Saved to ' + s);finallyIcon.Free;end;end;end;# SaveToFile, Create, Height, Width, Canvas, ChangeFileExt example--------------------------------------------------------ExpandFileName 将档案名称加在目前所在之路径全名之後--------------------------------------------------------Unit SysUtils函数原型function ExpandFileName(const FileName: string): string;说明设目前目录为c:\windows\档案名称为abc.txt则结果为c:\windows\abc.txt**** 此函数并不是求abc.txt的所在路径.范例procedure TForm1.Button1Click(Sender: TObject);varS: String;beginS:=ExpandFileName('abc.txt');Label1.Caption:=S;end;范例procedure TForm1.Button1Click(Sender: TObject)beginListBox1.Items.Add(ExpandFileName(Edit1.Text));end;------------------------------------------------------------------DirectoryExists 目录是否存在------------------------------------------------------------------ UnitFileCtrluses FileCtrl;procedure TForm1.Button1Click(Sender: TObject);beginif not DirectoryExists('c:\temp') thenif not CreateDir('C:\temp') thenraise Exception.Create('Cannot create c:\temp');end;--------------------------------------------------------ForceDirectories 目录---------------------------------------------------------Unit FileCtrl函数原型function ForceDirectories(Dir: string): Boolean;procedure TForm1.Button1Click(Sender: TObject);varDir: string;beginDir := 'C:\APPS\SALES\LOCAL';if DirectoryExists(Dir) thenLabel1.Caption := Dir + ' was created'end;--------------------------------------------------------ExpandUNCFileName 同上(只是得到网路上的路径)--------------------------------------------------------Unit SysUtils函数原型function ExpandUNCFileName(const FileName: string):string; ExtractFileDir 分析字串中的路径Unit SysUtils函数原型function ExtractFileDir(const FileName: string): string;说明设S字串为c:\windows\abc.txt则结果为c:\windows**** 功能在於由任何部份传来的叁数,加以分析它的路径范例procedure TForm1.Button1Click(Sender: TObject);varS: String;P1:String;beginP1:='c:\windows\abc.txt';S:=ExtractFileDir(P1);Label1.Caption:=S;end;S=='c:\windows'P1:='abc.txt'S==''P1:='c:abc.txt'S=='c:'P1:='c:\abc.txt'S=='c:\'--------------------------------------------------------ExtractFileDrive 分析字串中的磁碟机名称--------------------------------------------------------Unit SysUtils函数原型function ExtractFileDrive(const FileName: string): string; **** 功能同上,只是传回磁碟机名称.范例procedure TForm1.Button1Click(Sender: TObject);varS: String;P1:String;beginP1:='c:\windows\abc.txt';S:=ExtractFileDrive(P1);Label1.Caption:=S;end;S:='c:'P1:='abc.txt'S==''--------------------------------------------------------ExtractFileExt 分析字串中的档案名称的副档名--------------------------------------------------------Unit SysUtils函数原型function ExtractFileExt(const FileName: string): string; 范例procedure TForm1.Button1Click(Sender: TObject);varS: String;P1:String;beginP1:='c:\windows\abc.txt';S:=ExtractFileExt(P1);Label1.Caption:=S;end;S=='.txt'P1:='c:\windows\abc'S==''范例MyFilesExtension := ExtractFileExt(MyFileName);--------------------------------------------------------ExtractFileName 分析字串中的档案名称(只传回档案名称)--------------------------------------------------------Unit SysUtils函数原型function ExtractFileName(const FileName: string): string;范例procedure TForm1.Button1Click(Sender: TObject);varS: String;P1:String;beginP1:='c:\windows\abc.txt';S:=ExtractFileName(P1);Label1.Caption:=S;end;S=='abc.txt'范例procedure TForm1.Button1Click(Sender: TObject);varBackupName: string;FileHandle: Integer;StringLen: Integer;X: Integer;Y: Integer;beginif SaveDialog1.Execute thenbeginif FileExists(SaveDialog1.FileName) thenbeginBackupName := ExtractFileName(SaveDialog1.FileName);BackupName := ChangeFileExt(BackupName, '.BAK');if not RenameFile(SaveDialog1.FileName, BackupName) thenraise Exception.Create('Unable to create backup file.');end;FileHandle := FileCreate(SaveDialog1.FileName);{ Write out the number of rows and columns in the grid. }FileWrite(FileHandle,StringGrid1.ColCount, SizeOf(StringGrid1.ColCount));FileWrite(FileHandle,StringGrid1.RowCount, SizeOf(StringGrid1.RowCount));for X := 0 to StringGrid1.ColCount ? 1 dobeginfor Y := 0 to StringGrid1.RowCount ? 1 dobegin{ Write out the length of each string, followed by the string itself. }StringLen := Length(StringGrid1.Cells[X,Y]);FileWrite(FileHandle, StringLen, SizeOf(StringLen));FileWrite(FileHandle,StringGrid1.Cells[X,Y], Length(StringGrid1.Cells[X,Y]);end;end;FileClose(FileHandle);end;end;##FileExists, RenameFile, FileCreate, FileWrite, FileClose, ExtractFileName Example --------------------------------------------------------ExtractFilePath 分析字串中的路径--------------------------------------------------------Unit SysUtils函数原型function ExtractFilePath(const FileName: string): string;说明设S字串为c:\windows\abc.txt则结果为c:\windows\范例procedure TForm1.Button1Click(Sender: TObject);varS: String;P1:String;beginP1:='c:\windows\abc.txt';S:=ExtractFilePath(P1);Label1.Caption:=S;end;范例beginwith Session dobeginConfigMode := cmSession;tryAddStandardAlias('TEMPDB', ExtractFilePath(ParamStr(0)), 'PARADOX'); finallyConfigMode := cmAll;end;end;##ConfigMode, AddStandardAlias, ExtractFilePath example--------------------------------------------------------FileSearch 寻找档案在磁碟机中的正确路径--------------------------------------------------------Unit SysUtils函数原型function FileSearch(const Name, DirList: string): string;范例vars:string;begins:= FileSearch('abc.txt', 'c:\window\');Label1.Caption:=s;end;说明找到传回c:\window\abc.txt 找不到传回空字串.范例procedure TForm1.Button1Click(Sender: TObject);varbuffer: array [0..255] of char;FileToFind: string;beginGetWindowsDirectory(buffer, SizeOf(buffer));FileToFind := FileSearch(Edit1.Text, GetCurrentDir + ';' + buffer);if FileToFind = '' thenShowMessage('Couldn''t find ' + Edit1.Text + '.')elseShowMessage('Found ' + FileToFind + '.');end;##FileSearch, ShowMessage Example--------------------------------------------------------FileAge 传回档案的日期及时间(DOS型态).--------------------------------------------------------Unit SysUtils函数原型function FileAge(const FileName: string): Integer;说明就是档案总管中档案内容裹面的修改日期.范例procedure TForm1.Button1Click(Sender: TObject);varS: String;FileDate1:Integer;DateTime1:TDateTime;beginFileDate1 := FileAge('c:\delphi_d\delphi_help1.txt');DateTime1 := FileDateToDateTime(FileDate1);S := DateTimeToStr(DateTime1);Label1.Caption:=S;end;--------------------------------------------------------FileDateToDateTime 将DOS型态的日期时间转换为TDateTime型态.--------------------------------------------------------Unit SysUtils函数原型function FileDateToDateTime(FileDate: Integer):TDateTime;-----------------------------------------------------------------------------DateTimeToFileDate 将TDateTime型态的日期时间转换为DOS型态. -----------------------------------------------------------------------------Unit SysUtils函数原型function DateTimeToFileDate(DateTime: TDateTime):Integer; FileGetDate 传回档案的日期及时间(DOS型态).Unit SysUtils函数原型function FileGetDate(Handle: Integer): Integer;说明就是档案总管中档案内容裹面的修改日期.范例procedure TForm1.Button1Click(Sender: TObject);varFileHandle:Integer;S: String;FileDate1:Integer;DateTime1:TDateTime;beginFileHandle :=FileOpen('c:\delphi_d\delphi_help2.txt',fmOpenReadWrite);if FileHandle > 0 thenBeginFileDate1 := FileGetDate(FileHandle);DateTime1 := FileDateToDateTime(FileDate1);S := DateTimeToStr(DateTime1);FileClose(FileHandle);EndelseS := 'Open File Error';Label1.Caption:=S;end;-----------------------------------------------------------------------------FileSetDate 设定档案的日期及时间(DOS型态).-----------------------------------------------------------------------------Unit SysUtils函数原型function FileSetDate(Handle: Integer; Age: Integer): Integer; 说明传回值为0表示成功.-----------------------------------------------------------------------------DeleteFile 删除档案-----------------------------------------------------------------------------Unit SysUtils函数原型function DeleteFile(const FileName: string): Boolean;范例一DeleteFile('DELETE.ME');范例二if FileExists(FileName) thenif MessageDlg('Do you really want to delete ' +ExtractFileName(FileName) + '?'), []) = IDYes thenDeleteFile(FileName);##FileExists, DeleteFile Example-----------------------------------------------------------------------------RenameFile 更改档名-----------------------------------------------------------------------------Unit SysUtils函数原型function RenameFile(const OldName, NewName: string):Boolean;范例procedure TForm1.Button1Click(Sender: TObject);varBackupName: string;FileHandle: Integer;StringLen: Integer;X: Integer;Y: Integer;beginif SaveDialog1.Execute thenbeginif FileExists(SaveDialog1.FileName) thenbeginBackupName := ExtractFileName(SaveDialog1.FileName);BackupName := ChangeFileExt(BackupName, '.BAK');if not RenameFile(SaveDialog1.FileName, BackupName) thenraise Exception.Create('Unable to create backup file.');end;FileHandle := FileCreate(SaveDialog1.FileName);{ Write out the number of rows and columns in the grid. }FileWrite(FileHandle,StringGrid1.ColCount, SizeOf(StringGrid1.ColCount));FileWrite(FileHandle,StringGrid1.RowCount, SizeOf(StringGrid1.RowCount));for X := 0 to StringGrid1.ColCount ? 1 dobeginfor Y := 0 to StringGrid1.RowCount ? 1 dobegin{ Write out the length of each string, followed by the string itself. }StringLen := Length(StringGrid1.Cells[X,Y]);FileWrite(FileHandle, StringLen, SizeOf(StringLen));FileWrite(FileHandle,StringGrid1.Cells[X,Y], Length(StringGrid1.Cells[X,Y]);end;end;FileClose(FileHandle);end;end;-----------------------------------------------------------------------------DiskFree 磁碟机剩馀空间(Bytes)-----------------------------------------------------------------------------Unit SysUtils函数原型function DiskFree(Drive: Byte): Integer;范例varS: string;beginS := IntToStr(DiskFree(0) div 1024) + ' Kbytes free.';Label1.Caption:=S;end;说明Drive0=目前磁碟机,1=A磁碟机,2=B磁碟机...传回值若为-1,表示磁碟机侦测错误.范例varS: string;AmtFree: Int64;Total: Int64;beginAmtFree := DiskFree(0);Total := DiskSize(0);S := IntToStr(AmtFree div Total) + 'percent of the space on drive 0 is free: ' (AmtFree div 1024) + ' Kbytes free. ';Canvas.TextOut(10, 10, S);。
DELPHI控件属性、方法、事件及常用函数DELPHI控件属性、方法、事件及常用函数一.TmainMemu控件该控件是一个标准的菜单控件,运用它为窗口提供菜单。
该对象的层次结构为:TObject—TPersistent--TCompoment—TMenu。
属性1-AutoMetge:Boolean功能:用于确定非MID程序中非主Form上的菜单要不要和主Form 的菜单合并。
主Form菜单AutoMerge的特性总是False。
此外,还要设置菜单项的GroupIndex属性。
2-BiDiMode:TBiDiMode功能:控制菜单的布置模式,是从左至右,还是从右至左。
3-Handle:HMENU功能:菜单窗口句柄。
4-Images:TImagList功能:出现在菜单项左边的图像列表。
菜单项通过设置它们的ImageIndex属性,以确定图像列表中的哪—个图像出现在菜单项的左边。
5-Items:TMenuItem功能:菜单项,描述了菜单的元素。
6-OwnerDraw:Boolean功能:确定菜单项是否可以由应用程序来画。
7-ParentBiDiMode:Boolean功能:确定BiDiMode属性是否从父辈继承而来,菜单的父辈一般为Form。
方法1-GetOle2AcceleratorTabel:(var AccelTable:HAccel;var AccelCount:Integer;Group:array of Integer)功能:返回主菜单的加速键表,其参数如下AccelTabel:设置加速键表的句柄。
AccelCount:设置加速键的总数。
Groups:即GroupIndex的值。
2-Merge:功能:组合Form上的一个主菜单与另一个非MDI应用程序的主菜单。
调用Merge方法将另一个主菜单组合进该菜单。
参数Menu指定了要合并的菜单3-PopulateOle2Menu:(ShareMenu:HMenu; Groups:array of Integer; var Widths:array of Longint)功能:组装OLE菜单。
Delphi Math单元函数 (2011-12-22 22:05:57)转载▼ 标签: 杂谈 分类: delphi 这个单元包含高性能的算术、三角、对数、统计和金融方面的计算及FPU程序函数用于补充Delphi语言System.pas 单元中的数学常规程序函数 注意 1) 对于有些函数,这个单元中涉及的概念或常数由Earl F. Glynn (www.efg2.com) 和 Ray Lischner (www.tempest-sw.com)提供。 2) 所有的角度参数三角函数的结果都用弧度表示 3) 下列大部分的三角和对数程序直接的映射到Intel 80387 FPU 4) 浮点机指令、输入域、输出范围和错误处理主要由 FPU 硬件决定 5) 汇编程序中的代码支持Pentium FPU 管线体系 常数 IEEE 浮点类型的范围, 包括非正规的 1) MinSingle = 1.5e-45; 最小Single数 2) MaxSingle = 3.4e+38; 最大Single数 3) MinDouble = 5.0e-324; 最小Double数 4) MaxDouble = 1.7e+308; 最大Double数 5) MinExtended = 3.4e-4932; 最小Extended数 6) MaxExtended = 1.1e+4932; 最大Extended数 7) MinComp = -9.223372036854775807e+18; 最小Comp数 8) MaxComp = 9.223372036854775807e+18; 最大Comp数 下列常数不应当被用于比较关系,仅仅用于分配。若要用于比较关系请使用IsNan 和 IsInfinity 函数。(已提供在后面) 9) NaN = 0.0 / 0.0; 非数 (*$EXTERNALSYM NaN*) (*$HPPEMIT 'static const Extended NaN = 0.0 / 0.0;'*) 10) Infinity = 1.0 / 0.0; 正无穷大 (*$EXTERNALSYM Infinity*) (*$HPPEMIT 'static const Extended Infinity = 1.0 / 0.0;'*) 11) NegInfinity = -1.0 / 0.0; 负无穷大 (*$EXTERNALSYM NegInfinity*) (*$HPPEMIT 'static const Extended NegInfinity = -1.0 / 0.0;'*) 一、 三角函数 1) 函数 ArcCos(const X: Extended): Extended; ( IN: |X| <= 1 OUT: [0..PI] 弧度) 2) 函数 ArcSin(const X: Extended): Extended; (IN: |X| <= 1 OUT: [-PI/2..PI/2] 弧度) 3) 函数 ArcTan2(const Y, X: Extended): Extended; IN: |Y| < 2^64, |X| < 2^64, X <> 0 OUT: [-PI..PI] 弧度)。计算 ArcTan(Y/X), 并且返回一个正确象限内的角度 4) 过程 SinCos(const Theta: Extended; var Sin, Cos: Extended) register; SinCos:比分别调用Sin 和Cos 计算同一个角度快两倍 5) 函数 Tan(const X: Extended): Extended; 6) 函数 Cotan(const X: Extended): Extended; { 1 / tan(X), X <> 0 } 7) 函数 Secant(const X: Extended): Extended; { 1 / cos(X) } 8) 函数 Cosecant(const X: Extended): Extended; { 1 / sin(X) } 9) 函数 Hypot(const X, Y: Extended): Extended; { Sqrt(X**2 + Y**2) } 二、 角度单位换算程序 1) 函数 RadToDeg(const Radians: Extended): Extended; { 度数:= 弧度 * 180 / PI } 2) 函数 RadToGrad(const Radians: Extended): Extended; { 梯度:= 弧度 * 200 / PI } 3) 函数 RadToCycle(const Radians: Extended): Extended;{ 圆周:= 弧度 / 2PI } 4) 函数DegToRad(const Degrees: Extended): Extended; {弧度:= 度数* PI / 180} 5) 函数DegToGrad(const Degrees: Extended): Extended; 6) 函数DegToCycle(const Degrees: Extended): Extended; 7) 函数GradToRad(const Grads: Extended): Extended; {弧度:= 梯度 * PI / 200 } 8) 函数GradToDeg(const Grads: Extended): Extended; 9) 函数GradToCycle(const Grads: Extended): Extended; 10) 函数CycleToRad(const Cycles: Extended): Extended; {弧度:= 圆周* 2PI } 11) 函数CycleToDeg(const Cycles: Extended): Extended; 12) 函数CycleToGrad(const Cycles: Extended): Extended; 三、 双曲线函数 1) 弧度 Cot(const X: Extended): Extended; { 别名为 Cotan } 2) 函数 Sec(const X: Extended): Extended; { 别名为 Secant } 3) 函数 Csc(const X: Extended): Extended; { 别名为 Cosecant } 4) 函数 Cosh(const X: Extended): Extended; 5) 函数 Sinh(const X: Extended): Extended; 6) 函数 Tanh(const X: Extended): Extended; 7) 函数 CotH(const X: Extended): Extended; 8) 函数 SecH(const X: Extended): Extended; 9) 函数 CscH(const X: Extended): Extended; 10) 函数 ArcCot(const X: Extended): Extended; { IN: X <> 0 } 11) 函数 ArcSec(const X: Extended): Extended; { IN: X <> 0 } 12) 函数 ArcCsc(const X: Extended): Extended; { IN: X <> 0 } 13) 函数 ArcCosh(const X: Extended): Extended; { IN: X >= 1 } 14) 函数 ArcSinh(const X: Extended): Extended; 15) 函数 ArcTanh(const X: Extended): Extended; { IN: |X| <= 1 } 16) 函数 ArcCotH(const X: Extended): Extended; { IN: X <> 0 } 17) 函数 ArcSecH(const X: Extended): Extended; { IN: X <> 0 } 18) 函数 ArcCscH(const X: Extended): Extended; { IN: X <> 0 } 四、 对数函数 1) 函数 LnXP1(const X: Extended): Extended; { Ln(X + 1), accurate for X near zero } 2) 函数 Log10(const X: Extended): Extended; { 基数为10的X对数} 3) 函数 Log2(const X: Extended): Extended; {基数为2的X对数} 4) 函数 LogN(const Base, X: Extended): Extended; {基数为N的X对数} 五、 指数函数 1) 函数 IntPower(const Base: Extended; const Exponent: Integer): Extended register; IntPower:任意基数Base的Exponent整数幂。快 2) 函数 Power(const Base, Exponent: Extended): Extended; Power:任意基数的任意幂; 对于分指数或 |指数| > MaxInt, 基数必须> 0. 六、 各种例程 1) 过程 Frexp(const X: Extended; var Mantissa: Extended; var Exponent: Integer) register; Frexp:分离X 的尾数和指数 2) 函数 Ldexp(const X: Extended; const P: Integer): Extended register; Ldexp:返回 X*2^P