2009年3月24日 星期二

Delphi函數

以下為Delphi常用到之函數
將DATASET內之所有field名稱放至Listbox(不含彙總欄位)
DataSet.GetFieldNames(ListBox1.Items)

//檔案/目錄類
檢查有無該目錄如沒有則建立目錄
ForceDirectories 可以一次建立多層目錄
ForceDirectories('c:\xxx\yyy\zzz');
就建立 c:\xxx、c:\xxx\yyy、c:\xxx\yyy\zzz 三個目錄
複製檔案 CopyFile
取得目前所在路徑 GetCurrentDir
更改路徑 ChDir
取得目前應用程式執行檔所在位置 ExtractFilePath(Application.ExeName)
取得絕對路徑之執行檔案名稱 ExtractFileName(const FileName: string)

//字串類
字串取代 StringReplace
格式化為數字 Format('%.4d', [StrToint(MaxSeq) + 1])
比對2個字串是否相等 CompareText(const S1, S2: string): Integer;
判斷目前值是否null varisnull

//數字類
將數字固定補滿2位數 IntToDigits(cdsSelect.RecNo,2)
無條件進位 Ceil
無條件捨去 Floor

//日期類
Use DateUtils Unit
function StartOfTheMonth(const A Value: TDateTime):TDateTime;該月起始日期 function EndOfTheMonth(const A Value: TDateTime):TDateTime;該月結束日期
function DaysInMonth(const A Value: TDateTime):word;該月有幾天

use DateTimeutils;
將日期字串(yyyymmdd)轉為時間格式 DateStringToDateTime
取出星期 DayOfWeek


//其他
播放音效 sndplaysound(pchar(opendialog1.FileName), SND_ASYNC);
循環
sndPlaySound(pchar(opendialog1.FileName), SND_ASYNC + SND_LOOP);
暫停
sndPlaySound(nil,SND_ASYNC);

判斷工作管理員內是否有此應用程式
FindProcess('EXCEL.EXE')
從工作管理員強制刪除執行程序
EndProcess('EXCEL.EXE')

沒有留言: