Delphi(pascal)的函數(shù)手冊_編程必備.doc_第1頁
Delphi(pascal)的函數(shù)手冊_編程必備.doc_第2頁
Delphi(pascal)的函數(shù)手冊_編程必備.doc_第3頁
Delphi(pascal)的函數(shù)手冊_編程必備.doc_第4頁
Delphi(pascal)的函數(shù)手冊_編程必備.doc_第5頁
已閱讀5頁,還剩54頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

delphi(pascal)的函數(shù)手冊 名稱 類型 說明 -Abort 函數(shù) 引起放棄的意外處理Abs 函數(shù) 絕對值函數(shù)AddExitProc 函數(shù) 將一過程添加到運行時庫的結(jié)束過程表中Addr 函數(shù) 返回指定對象的地址AdjustLineBreaks 函數(shù) 將給定字符串的行分隔符調(diào)整為CR/LF序列Align 屬性 使控件位于窗口某部分Alignment 屬性 控件標簽的文字位置AllocMem 函數(shù) 在堆棧上分配給定大小的塊AllowGrayed 屬性 允許一個灰度選擇AnsiCompareStr 函數(shù) 比較字符串(區(qū)分大小寫)AnsiCompareText 函數(shù) 比較字符串(不區(qū)分大小寫)AnsiLowerCase 函數(shù) 將字符轉(zhuǎn)換為小寫AnsiUpperCase 函數(shù) 將字符轉(zhuǎn)換為大寫Append 函數(shù) 以附加的方式打開已有的文件ArcTan 函數(shù) 余切函數(shù)AssignFile 函數(shù) 給文件變量賦一外部文件名Assigned 函數(shù) 測試函數(shù)或過程變量是否為空AutoSize 屬性 自動控制標簽的大小BackgroundColor 屬性 背景色BeginThread 函數(shù) 以適當?shù)姆绞浇⒂糜趦?nèi)存管理的線程BevelInner 屬性 控件方框的內(nèi)框方式BevelOuter 屬性 控件方框的外框方式BevelWidth 屬性 控件方框的外框?qū)挾菳lockRead 函數(shù) 讀一個或多個記錄到變量中BlockWrite 函數(shù) 從變量中寫一個或多個記錄BorderStyle 屬性 邊界類型BorderWidth 屬性 邊界寬度Break 命令 終止for、while、repeat循環(huán)語句Brush 屬性 畫刷Caption 屬性 標簽文字的內(nèi)容ChangeFileExt 函數(shù) 改變文件的后綴ChDir 函數(shù) 改變當前目錄Checked 屬性 確定復(fù)選框選中狀態(tài)Chr 函數(shù) 返回指定序數(shù)的字符CloseFile 命令 關(guān)閉打開的文件Color 屬性 標簽的顏色Columns 屬性 顯示的列數(shù)CompareStr 函數(shù) 比較字符串(區(qū)分大小寫)Concat 函數(shù) 合并字符串Continue 命令 繼續(xù)for、while、repeat的下一個循環(huán)Copy 函數(shù) 返回一字符串的子串Cos 函數(shù) 余弦函數(shù)Ctl3D 屬性 是否具有3D效果Cursor 屬性 鼠標指針移入后的形狀Date 函數(shù) 返回當前的日期DateTimeToFileDate 函數(shù) 將DELPHI的日期格式轉(zhuǎn)換為DOS的日期格式DateTimeToStr 函數(shù) 將日期時間格式轉(zhuǎn)換為字符串DateTimeToString 函數(shù) 將日期時間格式轉(zhuǎn)換為字符串DateToStr 函數(shù) 將日期格式轉(zhuǎn)換為字符串DayOfWeek 函數(shù) 返回星期的數(shù)值Dec 函數(shù) 遞減變量值DecodeDate 函數(shù) 將日期格式分解為年月日DecodeTime 函數(shù) 將時間格式分解為時、分、秒、毫秒Delete 函數(shù) 從字符串中刪除子串DeleteFile 命令 刪除文件DiskFree 函數(shù) 返回剩余磁盤空間的大小DiskSize 函數(shù) 返回指定磁盤的容量Dispose 函數(shù) 釋放動態(tài)變量所占的空間DisposeStr 函數(shù) 釋放字符串在堆棧中的內(nèi)存空間DitherBackground 屬性 使背景色的色彩加重或減少50%DragCursor 屬性 當鼠標按下時光標的形狀DragMode 屬性 按動的作用方式DropDownCount 屬性 容許的顯示數(shù)據(jù)項的數(shù)目EditMask 屬性 編輯模式Enabled 屬性 是否使標簽呈現(xiàn)打開狀態(tài)EncodeDate 函數(shù) 將年月日合成為日期格式EncodeTime 函數(shù) 將時、分、秒、毫秒合成為時間格式EndMargin 屬性 末尾邊緣Eof 函數(shù) 對有類型或無類型文件測試是否到文件尾Eoln 函數(shù) 返回文本文件的行結(jié)束狀態(tài)Erase 命令 刪除外部文件ExceptAddr 函數(shù) 返回引起當前意外的地址Exclude 函數(shù) 從集合中刪除一些元素ExceptObject 函數(shù) 返回當前意外的索引Exit 命令 立即從當前的語句塊中退出Exp 函數(shù) 指數(shù)函數(shù)ExpandFileName 函數(shù) 返回包含絕對路徑的字符串ExtendedSelect 屬性 是否允許存在選擇模式,True時,MultiSelect才有意義ExtractFileDir 函數(shù) 返回驅(qū)動器和路徑ExtractFileExt 函數(shù) 返回文件的后綴ExtractFileName 函數(shù) 返回文件名ExtractFilePath 函數(shù) 返回指定文件的路徑FileAge 函數(shù) 返回文件已存在的時間FileClose 命令 關(guān)閉指定的文件FileCreate 命令 用指定的文件名建立新文件FileDateToDateTime 函數(shù) 將DOS的日期格式轉(zhuǎn)換為DELPHI的日期格式FileExists 函數(shù) 檢查文件是否存在FileGatAttr 函數(shù) 返回文件的屬性FileGetDate 函數(shù) 返回文件的DOS日期時間標記FileOpen 命令 用指定的存取模式打開指定的文件FilePos 函數(shù) 返回文件的當前指針位置FileRead 命令 從指定的文件讀取FileSearch 命令 在目錄中搜索指定的文件FileSeek 函數(shù) 改變文件的指針FileSetAttr 函數(shù) 設(shè)置文件屬性FileSetDate 函數(shù) 設(shè)置文件的DOS日期時間標記FileSize 函數(shù) 返回當前文件的大小FileWrite 函數(shù) 對指定的文件做寫操作FillChar 函數(shù) 用指定的值填充連續(xù)字節(jié)的數(shù)e.gGetMem(R, SizeOf(TMyRecord); FillChar(R, SizeOf(TMyRecord), #0); SetLength(R.S, $FFFF); FreeMem(R); / 不會釋放 R.S 內(nèi)存空間 !FindClose 命令 終止FindFirst/FindNext序列FindFirst 命令 對指定的文件名及屬性搜索目錄FindNext 命令 返回與文件名及屬性匹配的下一入口FloatToDecimal 函數(shù) 將浮點數(shù)轉(zhuǎn)換為十進制數(shù)FloatToStrF 函數(shù) 將浮點數(shù)轉(zhuǎn)換為字符串FloatToStr 函數(shù) 將浮點數(shù)轉(zhuǎn)換為字符串FloatToText 函數(shù) 將給定的浮點數(shù)轉(zhuǎn)換為十進制數(shù)FloatToTextFmt 函數(shù) 將給定的浮點數(shù)轉(zhuǎn)換為十進制數(shù)Flush 函數(shù) 將緩沖區(qū)的內(nèi)容刷新到輸出的文本文件中FmtLoadStr 函數(shù) 從程序的資源字符串表中裝載字符串FmtStr 函數(shù) 格式化一系列的參數(shù),其結(jié)果以參數(shù)Result返回Font 屬性 設(shè)置字體Format 函數(shù) 格式化一系列的參數(shù)并返回Pascal字符串FormatBuf 函數(shù) 格式化一系列的參數(shù)FormatDateTime 函數(shù) 用指定的格式來格式化日期和時間FormatFloat 函數(shù) 指定浮點數(shù)格式Frac 函數(shù) 返回參數(shù)的小數(shù)部分FreeMem 函數(shù) 按給定大小釋放動態(tài)變量所占的空間GetDir 返回指定驅(qū)動器的當前目錄GetHeapStatus 返回內(nèi)存管理器的當前狀態(tài)GetMem (var P: Pointer; Size: Integer);(建立一指定大小的動態(tài)變量)分配一個指定大小的內(nèi)存塊(連續(xù)),并將指針指向該處GetMemoryManager 返回內(nèi)存管理器的入口點Glyph 函數(shù) 按鈕上的圖象Halt 停止程序的執(zhí)行并返回到操作系統(tǒng)Hi 返回參數(shù)的高地址位High 返回參數(shù)的上限值Hint 屬性 提示信息Int 返回參數(shù)的整數(shù)部分Include 添加元素到集合中Insert 在字符串中插入子串IntToHex(,) 將整型數(shù)轉(zhuǎn)換為十六進制數(shù)。兩個參數(shù),第二個是返回十六進制數(shù)的最小長度IntToStr 將整型數(shù)轉(zhuǎn)換為字符串IOResult 返回最新的I/O操作完成狀態(tài)IsValidIdent 測試字符串是否為有效的標識符Items 屬性 默認顯示的節(jié)點Kind 屬性 擺放樣式LargeChange 屬性 最大改變值Layout 屬性 圖象布局Length 函數(shù) 返回字符串的動態(tài)長度Lines 屬性 缺省顯示內(nèi)容Ln 函數(shù) 自然對數(shù)函數(shù)Lo 函數(shù) 返回參數(shù)的低地址位LoadStr 函數(shù) 從應(yīng)用程序的可執(zhí)行文件中裝載字符資源LowerCase 函數(shù) 將給定的字符串變?yōu)樾慙ow 函數(shù) 返回參數(shù)的下限值Max 屬性 最大值MaxLength 屬性 最大長度Min 屬性 最小值MkDir 命令 建立一子目錄Move 函數(shù) 從源到目標復(fù)制字節(jié)MultiSelect 屬性 允許同時選擇幾個數(shù)據(jù)項Name 屬性 控件的名字New (var P: Pointer); 為一個指針變量分配內(nèi)存,會自動計算指針所指數(shù)據(jù)結(jié)構(gòu)需要空的空間大小(建立新的動態(tài)變量并設(shè)置一指針變量指向它)NewStr 函數(shù) 在堆棧上分配新的字符串Now 函數(shù) 返回當前的日期和時間Odd 測試參數(shù)是否為奇數(shù)OnActivate 事件 焦點移到窗體上時觸發(fā)OnClick 事件 單擊窗體空白區(qū)域觸發(fā)OnDblClick 事件 雙擊窗體空白區(qū)域觸發(fā)OnCloseQuery 事件 使用者試圖關(guān)閉窗體觸發(fā)OnClose 事件 窗體關(guān)閉后才觸發(fā)OnCreate 事件 窗體第一次創(chuàng)建時觸發(fā)OnDeactivate 事件 用戶切換到另一應(yīng)用程序觸發(fā)OnDragDrop 事件 鼠標拖放操作結(jié)束時觸發(fā)OnDragOver 事件 有其他控件從他上面移過觸發(fā)OnMouseDown 事件 按下鼠標鍵時觸發(fā)OnMouseUp 事件 釋放鼠標鍵時觸發(fā)OnMouseMove 事件 移動鼠標時觸發(fā)OnHide 事件 隱藏窗體時觸發(fā)OnKeyDown 事件 按下鍵盤某鍵時觸發(fā)OnKeyPress 事件 按下鍵盤上的單個字符鍵時觸發(fā)OnKeyUp 事件 釋放鍵盤上的某鍵時觸發(fā)OnPaint 事件 窗體上有新部分暴露出來觸發(fā)OnResize 事件 重新調(diào)整窗體大小觸發(fā)OnShow 事件 在窗體實際顯示之前瞬間觸發(fā)Ord 返回序數(shù)類的序數(shù)OutlineStyle 屬性 類型OutOfMemoryError 引起OutOfMemory意外PageIndex 屬性 頁索引Pages 屬性 頁ParamCount 函數(shù) 返回在命令行上傳遞給程序的參數(shù)數(shù)量ParamStr 函數(shù) 返回指定的命令行參數(shù)Pen 屬性 畫刷設(shè)置Pi 函數(shù) 返回圓周率PiPicture 屬性 顯示圖象PictureClosed 屬性 設(shè)置Closed位圖PictureLeaf 屬性 設(shè)置Leaf位圖PictureMinus 屬性 設(shè)置Minus位圖PictureOpen 屬性 設(shè)置Open位圖PicturePlus 屬性 設(shè)置Plus位圖Pos 函數(shù) 在字符串中搜索子串Pred 函數(shù) 返回先前的參數(shù)Random 函數(shù) 返回一隨機函數(shù)Randomize 函數(shù) 用一隨機數(shù)初始化內(nèi)置的隨機數(shù)生成器Read 函數(shù) 對有格式的文件,讀一文件組件到變量中;對文本文件,讀一個或多個值到一個或多個變量中Readln 函數(shù) 執(zhí)行Read過程,然后跳到文件下一行ReadOnly 屬性 只讀屬性ReAllocMem (var P: Pointer; Size: Integer); 重新分配指定大小內(nèi)存塊,參數(shù)P必須是nil或者指向一個由GetMem, AllocMem, 或 ReallocMem分配的內(nèi)存變量,其分配的內(nèi)存是連續(xù)的,會把前面已有的數(shù)據(jù)移到新分配的內(nèi)存中去Rename 函數(shù) 重命名外部文件RenameFile 函數(shù) 對文件重命名Reset 函數(shù) 打開已有的文件Rewrite 函數(shù) 建立并打開一新的文件RmDir 函數(shù) 刪除空的子目錄Round 函數(shù) 將實數(shù)值舍入為整型值RunError 函數(shù) 停止程序的執(zhí)行ScrollBars 屬性 滾動條狀態(tài)Seek 函數(shù) 將文件的當前指針移動到指定的組件上SeekEof 函數(shù) 返回文件的文件結(jié)束狀態(tài)SeekEoln 函數(shù) 返回文件的行結(jié)束狀態(tài)SelectedColor 屬性 選中顏色SetMemoryManager 函數(shù) 設(shè)置內(nèi)存管理器的入口點SetLength函數(shù) 為一個字符串變量分配空間SetTextBuf 函數(shù) 給文本文件指定I/O緩沖區(qū)Shape 屬性 顯示的形狀ShowException 函數(shù) 顯示意外消息與地址Sin 函數(shù) 正弦函數(shù)SizeOf 函數(shù) 返回參數(shù)所占的字節(jié)數(shù)SmallChange 屬性 最小改變值Sorted 屬性 是否允許排序Sqr 函數(shù) 平方函數(shù)Sqrt 函數(shù) 平方根函數(shù)StartMargin 屬性 開始邊緣State 屬性 控件當前狀態(tài)Str 函數(shù) 將數(shù)值轉(zhuǎn)換為字符串StrAlloc 函數(shù) 給以NULL結(jié)束的字符串分配最大長度-1的緩沖區(qū)StrBufSize 函數(shù) 返回存儲在由StrAlloc分配的字符緩沖區(qū)的最大字符數(shù)StrCat 函數(shù) 將一字符串附加到另一字符串尾并返回合并的字符串StrComp 函數(shù) 比較兩個字符串StrCopy 函數(shù) 將一個字符串復(fù)制到另一個字符串中StrDispose 函數(shù) 釋放堆棧上的字符串StrECopy 函數(shù) 將一字符串復(fù)制到另一個字符串并返回結(jié)果字符串尾部的指針StrEnd 函數(shù) 返回指向字符串尾部的指針Stretch 屬性 自動適應(yīng)控件的大小StrFmt 函數(shù) 格式化一系列的參數(shù)StrIComp 函數(shù) 比較兩個字符串(不區(qū)分大小寫)StringToWideChar 函數(shù) 將ANSI字符串轉(zhuǎn)換為UNICODE字符串StrLCat 函數(shù) 將一字符串中的字符附加到另一字符串尾并返回合并的字符串StrLComp 函數(shù) 以最大長度比較兩個字符串StrLCopy 函數(shù) 將一個字符串中的字符復(fù)制到另一個字符串中StrLen 函數(shù) 返回字符串中的字符數(shù)StrLFmt 函數(shù) 格式化一系列的參數(shù),其結(jié)果中包含有指向目標緩沖區(qū)的指針StrLIComp 函數(shù) 以最大長度比較兩個字符串(不區(qū)分大小寫)StrLower 函數(shù) 將字符串中的字符轉(zhuǎn)換為小寫StrMove 函數(shù) 將一個字符串中的字符復(fù)制到另一個字符串中StrNew 函數(shù) 在堆棧上分配一個字符串StrPas 函數(shù) 將以NULL結(jié)束的字符串轉(zhuǎn)換為PASCAL類的字符串StrPCopy 函數(shù) 將PASCAL類的字符串復(fù)制為以NULL結(jié)束的字符串StrPLCopy 函數(shù) 從PASCAL類的最大長度字符串復(fù)制為以NULL結(jié)束的字符串StrPos 函數(shù) 返回一個字符串在另一個字符串中首次出現(xiàn)指針StrRScan 函數(shù) 返回字符串中最后出現(xiàn)字符的指針StrScan 函數(shù) 返回字符串中出現(xiàn)首字符的指針StrToDate 函數(shù) 將字符串轉(zhuǎn)換為日期格式StrToDateTime 函數(shù) 將字符串轉(zhuǎn)換為日期/時間格式StrToFloat 函數(shù) 將給定的字符串轉(zhuǎn)換為浮點數(shù)StrToInt 函數(shù) 將字符串轉(zhuǎn)換為整型StrToIntDef 函數(shù) 將字符串轉(zhuǎn)換為整型或默認值StrToTime 函數(shù) 將字符串轉(zhuǎn)換為時間格式StrUpper 函數(shù) 將字符串中的字符轉(zhuǎn)換為大寫Style 屬性 類型選擇Suce 函數(shù) 返回后繼的參數(shù)Swap 函數(shù) 交換參數(shù)的高低地址位Tabs 屬性 標記每一項的內(nèi)容TabIndex 屬性 標記索引Text 屬性 顯示的文本TextToFloat 函數(shù) 將字符串(以NULL結(jié)束的格式)轉(zhuǎn)換為浮點數(shù)Time 函數(shù) 返回當前的時間TimeToStr 函數(shù) 將時間格式轉(zhuǎn)換為字符串Trim 函數(shù) 從給定的字符串中刪除前導(dǎo)和尾部的空格及控制字符TrimLeft 函數(shù) 從給定的字符串中刪除首部的空格及控制字符TrimRight 函數(shù) 從給定的字符串中刪除尾部的空格及控制字符Trunc 函數(shù) 將實型值截取為整型值Truncate 函數(shù) 截去當前文件位置后的內(nèi)容UnSelectedColor 屬性 未選中顏色UpCase 將字符轉(zhuǎn)換為大寫UpperCase 將給定的字符串變?yōu)榇髮慥al 函數(shù) 將字符串轉(zhuǎn)換為整型值VarArrayCreate 函數(shù) 以給定的界限和維數(shù)建立變體數(shù)組VarArrayDimCount 函數(shù) 返回給定變體的維數(shù)VarArrayHighBound 函數(shù) 返回給定變體數(shù)組維數(shù)的上界VarArrayLock 函數(shù) 鎖定給定的變體數(shù)組VarArrayLowBound 函數(shù) 返回給定變體數(shù)組維數(shù)的下界VarArrayOf 函數(shù) 返回指定變體的數(shù)組元素VarArrayRedim 函數(shù) 通過改變上限來調(diào)整變體的大小VarArrayUnlock 函數(shù) 解鎖指定的變體數(shù)組VarAsType 函數(shù) 將變體轉(zhuǎn)換為指定的類型VarCase 函數(shù) 將變體轉(zhuǎn)換為指定的類型并保存他VarClear 函數(shù) 清除指定的變體VarCopy 函數(shù) 將指定的變體復(fù)制為指定的變體VarFormDateTime 函數(shù) 返回包含日期時間的變體VarIsArray 函數(shù) 測試變體是否為數(shù)組VarIsEmpty 函數(shù) 測試變體是否為UNASSIGNEDVarIsNull 函數(shù) 測試變體是否為NULLVarToDateTime 函數(shù) 將給定的變體轉(zhuǎn)換為日期時間VarType 函數(shù) 將變體轉(zhuǎn)換為指定的類型并保存他Visible 屬性 控件的可見性WantReturns 屬性 為True時,按回車鍵產(chǎn)生一個回車符;為False時,按下Ctrl+Enter才產(chǎn)生回車符Write 命令 對有格式的文件,寫一變量到文件組件中;對文本文件,寫一個或多個值到文件中Writeln 命令 執(zhí)行WRITE過程,然后輸出一行結(jié)束標志W(wǎng)ideCharLenToString 函數(shù) 將ANSI字符串轉(zhuǎn)換為UNICODE字符串WideCharLenToStrWar 函數(shù) 將UNICODE字符串轉(zhuǎn)換為ANSI字符串變量WideCharToString 函數(shù) 將UNICODE字符串轉(zhuǎn)換為ANSI字符串WideCharToStrVar 函數(shù) 將UNICODE字符串轉(zhuǎn)換為ANSI字符串變量absolute /它使得你能夠創(chuàng)建一個新變量, 并且該變量的起始地址與另一個變量相同.var Str: string32; StrLen: Byte absolute Str;/這個聲明指定了變量StrLen起始地址與Str相同./由于字符串的第0個位置保存了字符串的長度, 所以StrLen的值即字符串長度.begin Str := abc; Edit1.Text := IntToStr(StrLen);end;abstract/它允許你創(chuàng)建抽象的方法, 包括有抽象方法的類稱為抽象類./Abstract關(guān)鍵字必須與Virtual或Dynamic關(guān)鍵字同時使用, 因為抽象方法必須被覆蓋式實現(xiàn)./抽象類不能實例化, 抽象方法不能包含方法體.type TDemo = class private protected procedure X; virtual; abstract; public constructor Create; destructor Destroy; override; published end;and/一、表示邏輯與if (a0) and (b0) then/二、表示位運算 學(xué)習(xí)視頻網(wǎng) var a,b,c: Integer;begin c := (a and b);end;/使用And表示邏輯時, And左右的表達式必須用小括號括起, 以避免以生條件的沖突./例如:if a0 and b0 then/編譯器可能會理解為:if a(0 and b)0 then/或:if (a0) and (b0) then/但是實際編譯時, 編譯器會產(chǎn)生一個沖突, 報告錯誤./并且第一種可能包含了abc的形式, 這在Delphi中不被支持./所以使用And運算符時必須使用括號, 以區(qū)分左右的條件./表示位運算時也必須加上括號, 將And以及左右參數(shù)括起.array/Array用于表示數(shù)組, 任何的對象都能被聲明成數(shù)組.數(shù)組分為靜態(tài)和動態(tài)的種./靜態(tài)數(shù)組var Arr1: array 1.10 of Integer;/動態(tài)數(shù)組, 由于聲明時不知其元素個數(shù), 所以必須在后期用SetLength方法設(shè)置數(shù)組的大小var Arr2: array of Integer;/數(shù)組作為參數(shù)時, 不能傳入數(shù)組的大小, 只能傳入數(shù)組名, 然后用Length方法獲取數(shù)組的元素個數(shù)function X(A: array of Integer): Integer;var i: Integer;begin Result := 0; for i := 0 to Length(A)-1 do Result := Result + Ai;end;as/As用于將一個對象轉(zhuǎn)換為另一個對象procedure BtnClick(Sender:TObject);begin (Sender as TButton).Caption := Clicked;end;/對于對象填充接口的轉(zhuǎn)換, 必須用As進行(HTTPRIO as IExp).GetConnection;/As不能用于數(shù)據(jù)類型的轉(zhuǎn)換, 下面的代碼是錯誤的:var i: Integer; s: string;begin s := (i as string);end;/正確寫法是:s := string(i);asm/Asm關(guān)鍵字用于插入?yún)R編代碼, 使用匯編代碼時, 必須使用asm.end;的結(jié)構(gòu), 而非begin.end;function IntToHex(Value: Integer; Digits: Integer): string;asm CMP EDX, 32 JBE A1 xor EDX, EDX A1: PUSH ESI MOV ESI, ESP SUB ESP, 32 PUSH ECX MOV ECX, 16 CALL CvtInt MOV EDX, ESI POP EAX CALL System.LStrFromPCharLen ADD ESP, 32 POP ESIend;assembler/Assembler關(guān)鍵字用于支持早期的匯編, 如80386等./它和Asm的區(qū)別:Asm允許使用Win32匯編, 而Assembler只允許80x86匯編, 它不允許Invoke語句的出現(xiàn).function IntToHex(AValue: Int64): string; assembler;automated/Automated訪問區(qū)分符用于描述一個自動類型的成員, 它能夠使程序的版本向下兼容./ComObj單元內(nèi)的成員及其實例不能使用Automated訪問區(qū)分符.type TDemo = class automated Str:WideString; end;/在程序的下一個版本中, 將Str做了修改, 變成type TDemo = class automated Str: AnsiString; end/則新版本的Str變量能夠接受舊版本的WideString型數(shù)據(jù), 并自動轉(zhuǎn)換成AnsiString./在實際開發(fā)中, 如果沒有特殊的需要, 一般不用automated訪問區(qū)分符.begin/begin關(guān)鍵字用于表示一段程序或一個結(jié)構(gòu)的開始, 必須用end關(guān)鍵字來結(jié)束.procedure X;begin ShowMessage(A Demo);end;/一般的結(jié)構(gòu), 如If, For, While等也需要用begin關(guān)鍵字來標出結(jié)構(gòu)起始點for i:=1 to 100 dobegin sum := sum + i; if sum 1000 then Break;end;case/Case語句用于完成條件選擇, Case語句的的被選擇對象必須是有序類型, 包括整型, 枚舉類型, 字符型等./Case語句必須由end結(jié)束,如果沒有相符合的選擇項, 可以加入else來作出通用選擇.function GetDays(AYear,AMonth: Integer): Integer;begin case AMonth of 1,3,5,7,8,10,12: Result := 31; 4,6,9,11: Result := 30; 2: begin if IsLeapYear(AYear) then Result:=29 else Result:=28; end; else Result:=0;end;cdecl /Cdecl是函數(shù)調(diào)用協(xié)定的一種, 它規(guī)定了從C或C+編寫的DLL中調(diào)用函數(shù)所必須遵守的規(guī)則./它可以將C或C+中的數(shù)據(jù)類型轉(zhuǎn)換為Delphi的./例如C+中的代碼:int X(int i) return i*2;/這個函數(shù)被編譯在Demo.dll中, 用Delphi調(diào)用時必須使用:function X(i: Integer): Integer; Cdecl; external Demo.dll;class/Class關(guān)鍵字用于聲明或繼承一個類, 也可以使類和接口同時繼承./另外, Class關(guān)鍵字也能用于聲明類通用方法, 使得父類可以從類內(nèi)訪問子類的方法.type ClassDemo = class(TObject) private public constructor Create; end;/如果用class聲明方法, 則該方法在類與相關(guān)類中都可以使用, 譬如:type ClassA = class private public procedure Y; end;type ClassB = class(ClassA) private public class procedure X; end;/則在使用時ClassA能夠直接訪問ClassB的X方法procedure ClassA.Y;begin Self.X;end;/此時父類將子類的class方法作為自身的方法進行調(diào)用.const/Const關(guān)鍵字用于聲明常量, 使用const聲明的數(shù)據(jù)將不能在程序中被改變./也可以用來聲明函數(shù)參數(shù), 用const指定的參數(shù)不允許在函數(shù)中改變.const MyFileName = Delphi;const MyInteger = 100;/用Const聲明常量不需要指出其數(shù)據(jù)類型, 系統(tǒng)會自動判斷類型, 并作自動調(diào)整./函數(shù)中可以用const聲明不可更改的參數(shù)function X(const i: Integer): string;/此時在函數(shù)操作過程中, i的值不可改變.constructor/constructor關(guān)鍵字用來聲明一個類的構(gòu)造函數(shù), 當類被實例化時, 首先調(diào)用此函數(shù)/構(gòu)造函數(shù)一般用Create表示, Create方法能夠連帶類中存在的CreateWnd方法.type ClassDemo = class(TObject) private fValue: Integer; public constructor Create; end;constructor ClassDemo.Create;begin fValue := 0;end;contains/Contains關(guān)鍵字指出了某個包(Package)是否包含某個文件./用Contains引入的文件必須被添加到包文件中, 它可以避免關(guān)鍵文件的引用丟失.package DATAX; requires rtl, clx; contains Db, DBLocal, DBXpress;end.default/Default關(guān)鍵字用于指出一個屬性的默認值/只有有序類型的屬性才允許默認值的存在, 否則必須在構(gòu)造函數(shù)中初始化屬性值.type ClassDemo = class private fValue: Integer; published property Value: Integer read fValue write fValue default 0; end;/它也可以指出一個類的默認屬性property stringsIndex: Integer: string read GetString write PutString; Default;destructor/Destructor用于標識析構(gòu)函數(shù), 析構(gòu)函數(shù)在類被釋放時自動調(diào)用./析構(gòu)函數(shù)只允許覆蓋, 再不允許重載.析構(gòu)函數(shù)通常用Destroy作為函數(shù)名.type ClassDemo = class(TComponent) public destructor Destroy;override; end;/由于TComponent類中也有Destroy方法, 所以要將其重寫/但是若要重載析構(gòu)函數(shù), 則不允許, 下面代碼是錯誤的:destructor Destroy; overload;dispid/DispId關(guān)鍵字被用在DispInterface接口中, 用于指定特定的適配序號./在DispInterface接口中, 適配序號必須是唯一的, /如果不指定DispId, 則系統(tǒng)會自動分配適配序號給接口內(nèi)每一個方法./可以通過適配序號訪問DispInterface接口中的方法.type IStringsDisp = dispinterface EE05DFE2-5549-11D0-9EA9-0020AF3D82DA property ControlDefaultIndex: Integer: Olevariant dispid 0; default; function Count: Integer; dispid 1; property ItemIndex: Integer: Olevariant dispid 2; procedure Remove(Index: Integer); dispid 3; procedure Clear; dispid 4; function Add(Item: Olevariant): Integer; dispid 5; function _NewEnum: IUnknown; dispid -4; end;dispinterface/DispInterface用于聲明一個特定的適配器接口, 這個適配器能夠接受標準系統(tǒng)接口中傳入傳出的數(shù)據(jù)./用DispInterface聲明的接口不能被繼承, 只能夠被引用./DispInterface中方法只能調(diào)用, 并且必須被動態(tài)綁定./可以通過DispId為接口內(nèi)方漢分配適配序號./DispInterface僅能用于Windows平臺, 如果在Linux下進行開發(fā), 則此關(guān)鍵字會自動被系統(tǒng)屏蔽./通常情況下, 不使用DispInterface./實例請參見DispIddiv/Div用于求兩數(shù)之整數(shù)商.用于Div運算的兩個數(shù)值必須均為整型, 其運算結(jié)果也為整型.var a,b,c:Integer;begin a := 20; b := 3; c := a div b; 6end;do/Do關(guān)鍵字用于For, While, On, With語句, 構(gòu)成特定的結(jié)構(gòu)/For語句:for i := 1 to 100 do sum:=sum+i;/While語句:while i b then c := aelse c:=b;/Case語句:case Tag Of 1:Result:=1; 2:Result:=2; 3:Result:=3;else Result:=0;end;/On語句(異常處理):try i := StrToInt(s);Excpet on EZeroDivide do Result := 1; on EOverflow do Result := 2;else Result := 0;end;end/End用于結(jié)束一個語句塊或是一個單元./它可以與begin, Case, Class, Interface, Asm, Unit, Package等相匹配./對于語句塊(局部結(jié)束), End后必須添加分號./而對于單元或包(全局結(jié)束), end后必須添加句號./在If語句中else關(guān)鍵字前的End后不允許添加符號.procedure X;beginwith Button1 dobeginif Button1.ShowHint thenButton1.Caption := HintedelseButton1.Caption := Not Hinted;end;end;/在包內(nèi)使用End來結(jié)束:package DATAX; requires rtl, clx; contains Db, DBLocal, DBXpress;end.except/except關(guān)鍵字用于異常處理, 必須用在try語句內(nèi), 如果發(fā)生異常, 則執(zhí)行except后的語句try i := StrToInt(s);except ShowMessage(Error!);end;export/Export標明了函數(shù)調(diào)用協(xié)定, 指出函數(shù)可以被輸出, 輸出的函數(shù)能被本地或遠程調(diào)用./其他程序可以用dll的形式調(diào)用程序內(nèi)的函數(shù).它是向下兼容的.function Add(a,b: Integer): Integer; export;/如果這個程序被編譯為Demo.exe, 并且另一個程序需要調(diào)用這個函數(shù), 可以使用以下語句function Add(a,b: Integer): Integer; stdcall; external Demo.exe;exports/exports用于輸出對象, 它必須被用在接口和實現(xiàn)之間, 可以同時輸出多個項, 項與項之間用逗號分開.library Demo;function X(i: Integer): string; stdcall;beginResult:=IntToStr(i);end;exportsX;beginend./如果輸出的對象被重載(重載對象必須保證參數(shù)類型或個數(shù)不同), 則必須給對象起個別名, 并注明參數(shù).library Demo;function X(i: Integer): string; overload; stdcall;beginResult := IntToStr(i);end;function X(s: string): Integer; overload; stdcall;beginResult := StrToInt(s);end;exports X(i: Integer) name x1, X(s: string) name x2;beginend.external/External關(guān)鍵字用于引用一個外部的或是OBJ內(nèi)的方法.$L Demo.OBJprocedure X(i:Integer);external;/如果是從dll或外部程序中引用, 則可以使用以下代碼:function A(FileName: string): string; external Demo.dll;/如果被引用的函數(shù)被重載, 則必須另外指出引用的名稱.function A(Name: string): string; overload; stdcall; external Demo.dll name A1;function A(Code: Integer): string; overload; stdcall; external Demo.dll name A2;/使用External關(guān)鍵字時, 必須注意大小寫, 否則將出現(xiàn)錯誤.far/Far標明了函數(shù)調(diào)用協(xié)定, 指出函數(shù)可以被遠程調(diào)用./其他程序可以用dll的形式調(diào)用程序內(nèi)的函數(shù).它是向下兼容的.function Add(a,b: Integer): Integer; Far;/如果這個程序被編譯為Demo.exe, 并且另一個處于其他計算機的程序需要調(diào)用這個函數(shù), 可以使用以下語句:function Add(a,b: Integer): Integer; stdcall; external Demo.exe;file/File關(guān)鍵字指出了文件操作類型, 文件必須被聲明為File, /如果在File后追加Of和文件類型, 則文件可以被定義為讀寫指定類型數(shù)據(jù).type TPerson = record PName: string32; PAge: Integer; end;var PFile: file of TPerson;finalization/finalization關(guān)鍵字標識了單元被釋放時所要調(diào)用的方法, /通常是釋放掉單元中不能自動釋放的對象, 也可以不用./finalization最常用的情況是對OLE對象做反初始化.initialization ActiveX.OleInitialize(nil);finalization

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論