http://www.cnblogs.com/rogee/archive/2010/09/17/1829574.html
delphi控件屬性和事件
復制代碼
常用【屬性】
Action:該屬性是與組件關聯的行為,允許應用程序集中響應用戶命令
Anchors:與組件連接的窗體的位置點
Align:確定組件的對齊方式
AutoSize:確定組件是否自動調整其大小
BiDiMode:(所有組件) 為從右向左寫的語言提供支持
BoundsRect:定義組件邊框矩形(只適用於運行時)
Borderwidth:(窗口化組件)邊框的寬度
BorberStyle:設置組件邊框形狀(樣式)
Brush:可確定組件的風格和顏色
Caption:使用該屬性可指定標注組件的文本字符串
ClassName:該方法可得到對象的類名,我一直用它來得到數據庫中字段的類型,在 其它的方面還沒有用到
ClientHeight:可讀取和設置組件客戶區域的像素高度
ClientRect:可返回組件客戶區的大小,為一個矩形
ClientWidth:可讀取和設置組件客戶區域的像素寬度
Color:組件的背景顏色
Components:列出了該組件中所有的子組件,並可以對它們進行訪問
ComponentIndex:(所有組件)當前組件在其主組件所有的從組件列表中的位置 (只適用於運行時)
ComponentCount:顯示該組件擁有的子組件數 (只適用於運行時)
Constraints:(所有組件)在改變大小操作期間限定組件)的最大與最小尺寸
ConstrolCount:(所有組件)當前組件的子組件數目(只適用於運行時)
Controls:(所有組件)當前組件的子組件數組(只適用於運行時)
Create:構造一個對象實例,分配內存,並不初始化
Ctrl3D:設置組件邊框是否為3D模式,若BORDERSTYLE設置為BSNONE則此屬性無效
Cursor:指定指針的圖像(鼠標經過組件時光標所顯示的形狀)
Destroy:銷毀一個對象實例
DragCursor:拖動時,鼠標的形狀
DragKing:可獲取或設置組件是拖動還是停靠操作,分別對應Drag和Dock
DragMode:設置組件拖動模式。值dmManual和dmAutomatic,分別對應手工和自動
Enable:設定組件是否能使用,當設為FALSE時組件會呈灰色
Font:設定組件內文字的字型、字體大小、顏色等
Free:刪除對象實例,並釋放內存,如果對象不空,則自動調用析構函數
Height:設置組件顯示的高度
HelpContent 用來為幫助說明文件中的索引值建立關聯
Hint:設置當指針在該組件上時,顯示的幫助信息。此屬性必須在ShowHint屬性為True時生效
ImeName:設置輸入法名
Left:設定組件與父組件左邊框間的距離
Name:指定組件的名字,以反映當前應用程序的用途
Parent:確定組件的父組件
ParentColor:是否使用父組件的顏色,默認為True;
ParentFont:是否使用父組件的字體,默認為True;
PopupMenu:設定鼠標右鍵(彈出式)快捷菜單
ShowHint:是否顯示Hint中的信息
TabBorder 設定組件在按下TAB鍵后焦點(FOCUS)移動的順序
TabOrder:該屬性在其父組件的標簽順序中指定組件的順序
TabStop:確定用戶是否允許用Tab鍵訪問組件,若設為FALSE,則按TAB鍵后焦點並不 會在此組件上停留
Tag:該屬性沒有預先定義含義,為開發人員方便面提供
Text:只讀,組件內部的文本
Top:確定組件的頂部位置(組件與父組件上邊框間的距離)
TransParent:設置該組件是否透明
Visible:設定組件是否可見,此屬性只在執行時起作用
Width:設置組件顯示的寬度
WordWrap:當文本的長度大於組件的寬度時,是否自動換行
【方法】
Assign:該方法復制Source參數指定的對象數據給自身
BeginDrag:開始拖動組件,該方法只有在DragMode為dmManual時生效
BringToFront:該方法將組件放置在其父組件內所有其它的組件的前面
ClientToScreen:可將一個當前組件的當前坐標系統的Point點轉換為與屏幕坐標相應的點
EndDrag:該方法結束拖動組件,該方法只有在DragMode為dmManual時生效
FindComponent:該方法返回在Components屬性數組中的名稱與Aname參數中的字符串匹配的組件,使用該方法可確定組件是否擁有另一個組件,該方法不區分大小寫
Focused:該方法確定窗口組件是否輸入焦點
GetTextLen:計算組件文本的長度
Hide:隱藏組件
Refresh:可立即刷新組件
SendToBack:把一個窗口組件放置到其它組件的后面
SetBounds:可同時修改組件的所有邊界屬性
SetFocus:設置組件具有焦點
Show:顯示組件
Update:更新組件
【事件】
OnCanResize:當組件試圖改變大小時觸發(當組件有所改變時觸發的事件)
onClick:(鼠標單擊事件)當在此組件上按下鼠標左鍵時觸發的事件
OnConstrainedResize:在OnCanResize后觸發,可調整試圖調整大小的組件的約束
OnContexPopup:當彈出式菜單彈出時觸發
OnDblClick:(鼠標雙擊事件)當在此組件上雙擊鼠標左鍵時觸發的事件
OnDragDrop:釋放一個正在拖動的組件時觸發
OnDragOver:當一個組件在另一個組件上拖動時觸發
OnEndDock:當結束停靠時觸發
OnEndDrag:當結束拖動時觸發
OnEnter:當組件接受輸入焦點時觸發(當切換到其它組件使該組件失去焦點時觸發 的事件,但當切換到另一窗體或另一應用程序時此事件不會觸發)
onExit:當組件的焦點離開該組件時觸發
OnGetSiteInfo:該事件返回組件的停靠信息
onKeyDown:當按下任一鍵時產生(當在擁有焦點的組件上按下某個鍵時觸發的事件 ,按鍵包括所有的英文、數字鍵、方向鍵、功能鍵等)
onKeyPress:當用戶按下單個字符鍵時產生(當在擁有焦點的組件上按下某個鍵時觸 發的事件,但按鍵只包括所有的英文、數字鍵、TAB、BACKSPACE、ENTER、ESC)
onKeyUp:當釋放按下的鍵時產生(當使用者放開鍵盤上的按鍵時觸發的事件)
onMouseDown:當鼠標鍵在某個組件按下時觸發的事件(其參數包括哪個鼠標鍵被按 下、是否有特殊鍵(CTRL、ALT、SHIFT)被按下以及鼠標當前的坐標)
onMouseEnter:當鼠標在該組件上時觸發
onMouseLeave:當鼠標離開該組件上時觸發
onMouseMove:當鼠標在組件內移動時觸發的事件
onMouseUp:當鼠標鍵在組件上方放開時所觸發的事件
onMouseWheel:當鼠標滾輪滾動時觸發
onMouseWheelDown:當鼠標滾輪向下滾動時觸發
onMouseWheelUp:當鼠標滾輪向上滾動時觸發
OnResize:當改變組件大小后觸發
OnStartDock:當開始停靠時觸發
OnStartDrag:當開始拖動時並DragKing為dkDrag時觸發,
ONPAINT 在組件需要被重畫時觸發的事件,此時可進行自定義畫法
=========================================================================
■■■■■■■■■■■■■■■詳細屬性和事件■■■■■■■■■■■■■■
=========================================================================
opendialog對話框屬性
DefaultExt:當用戶未輸入文件擴展名時它用於指明默認的擴展名。
FileName:它為string型用於記錄最后一個被選中的文件的全路徑名。默認為空。
Filter(過濾器)特性:
它用於設置打開對話框中顯示的文件類型,實在打開的對話框中僅顯示與該特性所列的相匹配的文件。在程序設計階段用戶可以在對象觀察器中,單擊Filter特性值框中的“...”按鈕,將彈出Filter Editor 對話框,可以在此設置預顯示文件的擴展名,既設置過濾器。用戶還可以在程序代碼中動態的設置該特性值。例如:
Filter:='delphi uint Files|*.pas;*.dpr';
FilterIndex特性:
該特性為integer類型,在設置了多個過濾器時,用於確定在打開對話框中文件類型下拉列表中初始顯示的過濾器的序號,其默認值為1。
InitilDir:用它指明對話框的默認目錄。
Title:用它指明OpenDialog 組件標題欄中的字符串,默認值為“打開”。
==========================================================================
窗體組件(FORM)常見屬性及事件
屬性 說明
Active 指示此窗體是否擁有FOCUS
ActiveControl 指示窗體中目前擁有FOCUS的組件
ActiveMdichild 指示主窗體中目前擁有FOCUS的子窗體
ActiveOleControl 用於取得或設定此窗體上的OLE控制,以響應FOCUS改變
BorderIcons 指定哪些ICON顯示在窗體的TITLE BAR上
BorderSytle 用以指定窗體BORDER外觀及行為
Canvas 提供使用者可在窗體上CLIENT內自行顯示的畫板,一般在ONPAINT事件中使用
ClientHandle 提供可存取系統內部使用的MDI CLIENT WINDOW HANDLE
ClientHeight 窗體客戶區高度
ClientRect 窗體客戶區所對應的矩形
ClientWidth 窗體客戶區寬度
DEFAULTMONITOR 指定此窗體所顯示的預設的顯示器,用於多顯示器環境下
DESIGNER 此窗體的設計界面,一般不用用戶設定
DropTARGET 用以指定窗體是否為目前DRAG AND Drop動作的目標
FLOATING 用以指示此窗體是否正在停泊在另一個視窗內
FORMSTATE 用於指示此窗體所處狀態
FORMSTYLE 用於指示窗體的樣式
HELPFILE 用於指定HELP文件
ICON 指定窗體最小化時所顯示的ICON
KEYPREVIEW 指定此窗體是否需在目前的ACTIVE組件之前取得鍵盤輸入
MDICHILDCOUNT 用於取得子窗體數目
MDICHILDREN 用於取得子窗體(數組)
MENU 用於指定窗體主菜單
MODALRESULT 當窗體作用為MODAL對話框時,作為對話框的效果
MONITOR 用於指示窗體所顯示的顯示器
OLDCreateORDER 指定ONCreate和ONDESTROY事件何時發生
OLEFORMOBJECT 對包含在此窗體內的OLE對象指定OLEFORM界面
PARENT 設定此窗體的PARENT
PARENTBIDIMODE 指定是否此窗體使用PARENT的BIDIMODE
PIXELSPERINCH 表示此窗體設計時系統上字形的比例
POSITION 表示此窗體的大小及位置
PRINTSCALE 表示此窗體打印的比例
SCALED 用於指定窗體的大小是否依據PIXELSPERINTCH屬性來指定
TILEMODE 用於指定TILE方法被調用時子窗體如何排列
VISIBLE 用於設定此窗體是否被顯示
WINDOWMENU 如果窗體是一個MDI PARENT窗體,用於指定視窗的菜單
WINDOWSTATE 用於指定窗體如何顯示於屏幕中
事件 說明
ONPAINT 當窗體必須重畫時發生
ONHELP 當窗體收到HELP請求時發生
ONDRAGDrop 當一個對象拉進此窗體並丟下時發生
ONDRAGOVER 當一個對象拉進此窗體時發生
ONCONSTRAINEDRESIZE 在ONCANRESIZE事件發生后發生
ONCANRESIZE 當企圖改變窗體尺寸時確認是否改變
ONRESIZE 當窗體尺寸改變時發生
ONSTARTDOCK 當對象開始停泊時發生
ONENDDOCK 當對象停泊結束時發生
ONUNDOCK 當窗體解除停泊時發生
ONDOCKDrop 當其它窗體停泊到此組件時發生
ONDOCKOVER 當其它窗體向此組件停泊接近時發生
ONGETSITEINFO 當有關停泊消息傳回此窗體時發生
ONCreate 當窗體創建時發生
ONCLOSE 當窗體即將關閉時發生
ONCLOSEQUERY 在窗體即將關閉時確認是否真的關閉窗體
ONDESTROY 當窗體釋放時發生
ONSHOW 當窗體顯示時發生
ONHIDE 當窗體隱藏時發生
ONACTIVATE 當窗體獲得FOCUS時發生
ONDEACTIVATE 當窗體失去FOCUS時發生
菜單組件(MAINMENU、POPUPMENU)常見屬性
屬性 說明
AUTOMERGE 用於指定主窗體的主菜單是否與其它的窗體主菜單合並
HANDLE 主菜單的視窗代碼
BIDIMODE 用於指定選項名是由左至右讀或由右至左讀
IMAGES 用於指定選項旁可顯示的圖像內容
ITEMS 選項的內容
OWNERDRAW 用於指定選否是否可自行顯示
PARENTBIDIMODE 用於指定是否繼承父控件的BIDIMODE屬性
WINDOWHANDLE 使用此菜單的視窗代號
菜單項屬性 說明
ACTION 用於指定此選項對應的動作
BITMAP 用於指定在此選項旁的圖像內容
BREAK 用於指定是否從此選項開始建立新的分欄
CAPTION 選項顯示的名稱
CHECKED 用於指定此選項是否CHECKED
COMMAND 用於指定選項對應的WINDOWS COMMAND ID
COUNT 用於指示此選項的子選項數目
DEFAULT 用於指示此選項是否為子菜單的預設項目
EANBLED 用於指示此選項是否可用
GROUPINDEX 用於指定此選項所隸屬的邏輯群組,以控制主菜單之間的合並或單選鈕互斥的效果
HANDLE 對應此選項的Drop-DOWN菜單的WINDOWS MENU HANDLE
HELPCONTEXT 對應此選項的HELP CONTEXT ID
HINT 用於設定鼠標移入選項范圍時的提示信息
IMAGEINDEX 用以指定哪個圖像顯示於選項旁
ITEMS 此選項的子菜單項目數
MENUINDEX 此選項的父菜單內的選項索引值
PARENT 此選項的父菜單的選項
RADIOITEM 用於設定此選項是否與同組其它選項互斥
SHORTCUT 用於設定此選項的快捷鍵
VISIBLE 用於設定此選項是否可見
標簽(LABEL)常用屬性:
屬性 說明
ALIGNMENT 用於設定標簽內文本的對齊方式(水平方向)
AUTOSIZE 用於設定標簽組件是否根據組件內文本自動調整大小
FOCUSCONTROL 用於設定鍵入標簽內快捷鍵后應接受FOCUS的組件
LAYOUT 用於設定標簽文本如何放置(垂直方向)
SHOWACCELCHAR 用於設定是否允許標簽內文本是否顯示畫有下划線的快捷鍵值
TRANSPARENT 用於設定組件是否透明
WORDWRAP 用於設定組件文本寬於組件寬度時是否自動換行
編輯框(EDIT、MASKEDIT)的屬性:
屬性 說明
AUTOSelect 用於設定組件獲得FOCUS后是否自動選取所有文本
AUTOSIZE 用於設定組件內增加輸入文字時,是否自動加長組件長度
BORDERSTYLE 用於設定組件邊框風格
CANUNDO 用於設定組件內文本是否可UNDO
CHARCASE 用於設定組件內文本大小寫狀況
HIDESelectION 用於設定組件失去FOCUS時,選取文本是否有效
MAXLENGTH 用於設定組件內輸入文本的最大長度
MODIFIED 可用於判定組件內文本是否發生更改
OEMCONVERT 決定是否將編輯框內文字ASCII碼轉換成OEM,再由OEM轉換為ASCII
PASSWORDCHAR 設定密碼輸入時取代的字符
READONLY 設定編輯框內容是否可修改
SELLENGTH 指示編輯框內選定文本長度
SELSTART 指示編輯框內選定文本的起始位置
SELTEXT 指示編輯框內選定文本
EDITMASK 指示MASKEDIT掩碼字符串
按鈕(BUTTON、BITBTN、SPEED BUTTON)常見屬性:
普通BUTTON屬性 說明
CANCEL 設定此按鈕是否為取消鈕(取消鈕即在程序執行時若按ESC鍵可執行此按鈕的單擊事件)
DEFAULT 指按下ENTER鍵后是否執行此按的單擊事件
MODALRESULT 通常用於對話框窗體中,當按下此鈕時,此屬性值即成為此按鈕隸屬的MODAL窗體的MODALRESULT
CAPTION 設定或取得此按鈕上顯示的標題
BITBTN屬性 說明(圖形式按鈕)
GLYPH 用以設定此按鈕上出現的圖像
KIND 用以指定按鈕的類型
LAYOUT 用以設定圖像在按鈕上顯示的位置
MARGIN 用以設定按鈕邊與圖像邊之間的距離(以象素為單位)
NUMGLYPHS 用以設定按鈕圖像的數目
SPACION 用以設定圖像與文本之間的距離(以象素為單位)
STYLE 用以設定按鈕外觀
SPEED BUTTON屬性 說明(快速按鈕)
ALLOWALLUP 用以設定是否包含此快速鈕的組中是否能同時保持UP狀態
DOWN 用以設定此快速鈕是否已被選取
FLAT 用以設定此快速鈕是否顯示3D邊的效果
GROUPINDEX 用以設定快速鈕的組
TRANSPARENT 用以設定快速鈕是否透明
==========================================
備注組件(MEMO)的常見屬性和事件:
屬性 說明
LINES 用於取得組件中文本(為數組,因此可支持取單行文本)
TEXT 用於取得組件中文本(字符串)
READONLY 用於設定組件文本是否可修改
SCROLLBARS 用於設定組件滾動條模式
WANTRETURNS 用於設定輸入的ENTER鍵是否作為文本內容
WORDWRAP 用於設定文本是否自動換行
SELSTART 指示選中文本的起始位置
SELLENGTH 指示選中文本的長度
WANTTABS 用於設定輸入的TAB鍵是否作為文本內容
SELTEXT 指示選中文本
事件 說明
MEMO.LINES.ADD() 在當前行增加一行文本
MEMO.LINES.APPEND() 在末追加一行文本
MEMO.LINES.Insert 在指定位置增加一行文本
MEMO.LINES.Delete 刪除指定行文本
MEMO.LINES.LOADFROMFILE 從指定文件導入文本到組件
MEMO.LINES.LOADFROMSTREAM 從指定流導入文本到組件
MEMO.LINES.SAVETOFILE 將組件文本存為指定文件
MEMO.LINES.SAVETOSTREAM 將組件文本存為指定流
MEMO.CLEAR 清除組件所有文本
MEMO.CUTTOCLIPBOARD 將選定文本剪切到剪貼板
MEMO.COPYTOCLIPBOARD 將選定文本復制到剪貼板
MEMO.PASTEFROMCLIPBOARD 從剪貼板粘貼文本到當前位置
復選框(CHECKBOX)常見屬性:
屬性 說明
ALIGNMENT 設定復選框標題位置
ALLOWGRAYED 決定復選框是否存在GRAYED狀態
CHECKED 決定復選框狀態
STATE 指示復選框狀態
單選按鈕(RADIOBUTTON)常見屬性:
(提供互斥選項,因此通常用於成組實現,可用GROUPBOX或RADIOGROUP實現)
屬性 說明
ALIGNMENT 設定單選框標題位置
CHECKED 決定單選框狀態
組框(GROUPBOX)常見屬性:(用於作容器)
屬性 說明
CAPTION 組框標題,通常用於指示組件用途
單選分組框(RADIOGROUP)常見屬性:
屬性 說明
CAPTION 指示單選組合名稱
COLUMNS 指示單選按鈕又單行或多行為單位顯示
ITEMS 單選按鈕標題內容(以行為單位)
ITEMINDEX 指示當前選定的單選按鈕的索引值
列表框(LISTBOX)常見屬性:
屬性 說明
CANVAS 提供自定義顯示列表框項目內容的畫板,用於ONDRAWITEM事件
COLUMNS 設定多重列列表框的列數
EXTENDEDSelect 指定是否可使用SHIFT鍵進行連選
ITEMHEIGHT 設定列表框項目的高度
ITEMINDEX 指定選取的項目的索引值
ITEMS 項目的字符串內容
MULTISelect 設定是否允許多重選取
SELCOUNT 列表框中選定項目數目
SelectED 指示某個項目是否被選取
SORTED 指定列表框中項目擊者是否按字母順序排序
STYLE 指示列表框顯示模式
TOPINDEX 指示列表框頂端項目的索引值
組合框(COMBOBOX)常見屬性:
屬性 說明
CANVAS 提供自定義顯示組合框項目內容的畫板,用於ONDRAWITEM事件
CHARCASE 設定組合框內文字字母大小寫狀況
DropDOWNCOUNT 設定組合框下攔菜單最大顯示項目個數
DropPEDDOWN 用於判定組合框是否處於下拉菜單的狀態
ITEMINDEX 指示下拉菜單中目前被選取的項目的索引值
ITEMS 下拉菜單項目內容
MAXLENGTH 設定組合框中編輯部分可輸入的字符最大個數
SELLENGTH 指示組合框編輯部分被選取文本長度
SELTEXT 指示組合框中編輯部分被選取文本
SELSTART 指示組合框中編輯部分被選取文本起始位置
STYLE 指示組合框顯示模式
滾動條(SCROLLBAR)常見屬性:
屬性 說明
MAX 指示滾動條最大值
MIN 指示滾動條最小值
POSITION 指示滑動塊當前位置
LARGECHANGE 指示鼠標按滾動條框至滑動塊之間區域時移動值
SMALLCHANGE 指示鼠標按下滾動條兩端箭頭時移動值
KIND 指示滾動條類型(水平型或垂直型)
PAGESIZE 指示按下PAGEUP或PAGEDOWN時變化量
圖像框組件(IMAGE)常見屬性:
屬性 說明
AUTOSIZE 本組件是否調整成為與讀取圖像同等大小
INCREMENTALDISPALY 讀較大型圖像文件時是否逐步顯示
PICTURE 指向圖像文件對象,能常為文件名
STRETCH 是否將圖像自動調整為本組件預設大小
圖像列表框(IMAGELIST)常見屬性:
屬性 說明
BKCOLOR 指定背景顏色
BLENDCOLOR 前景混合顏色
COUNT 組件中圖像個數
DRAWINGSTYLE 指示本組件繪出圖像時采用的方式
HEIGHT 組件內各圖像的高度值
IMAGETYPE 繪制圖像時是否加上MASK圖像
MASKED 設定是否可以加上MASK
WIDTH 組件內各圖像的寬度值
工具欄組件(TOOLBAR)常見屬性:
屬性 說明
AUTOSIZE 設定工具欄是否自動調整大小以容納BAND
BUTTONCOUNT 工具欄中按鈕個數
BUTTONHEIGHT 工具欄中的按鈕高度
BUTTONS 以INDEX表示在工具欄中的按鈕
BUTTONWIDTH 工具欄中的按鈕寬度
DISABLEDIMAGES 當工具按鈕DISABLED時顯示的圖像列表
FLAT 是否設定浮出效果
HOTIMAGES 當鼠標指向工具欄按鈕時顯示的圖像列表
IMAGES 提供顯示在工具欄按鈕上的圖像列表
INDENT 設定工具欄左側間隔大小
LIST 設定標題文字是否顯示在圖形的右方
ROWCOUNT 指定工具欄的行數
SHOWCAPTIONS 設定工具按鈕是否顯示文字
WARPABLE 設定工具欄排列按鈕時是否自動換行
TOOLBUTTON屬性 說明
ALLOWALLUP 設定同組工具按鈕是否可以都未被選取
DOWN 設定按鈕是否可停在被按下的狀態
DropDOWNMENU 當工具按鈕按下時所出現的菜單
GROUPED 設定同組工具按鈕
IMAGEINDEX 關聯的圖像在圖像列表框中的索引值
INDETERMINATE 是否提供工具欄第三種情況
MARKED 設定按鈕是否有陰影
STYLE 設定按鈕樣式
WRAP 設定在此工具按鈕新增者是否為另一新欄
酷欄(COOLBAR)常見屬性:
屬性 說明
ALIGN 設定COOLBAR的對齊方式
AUTOSIZE 設定酷欄是否自動調整大小以容納BAND
BANDBORDERSTYLE 設定BAND的邊界風格
BANDS 顯示COOLBAR內所有的BAND
BITMAP 設定BAND的背景圖像
FIXEDORDER 設定是否可自行調整BAND的順序
FIXEDSIZE 設定是否以單一設度限定酷欄內所有的BAND
IMAGES 提供BANDS所需要的圖像
SHOWTEXT 設定BAND是否顯示文字
VERTICAL 設定BAND的排列方式(水平排列或垂直排列)
DOCKSITE 是否允許停泊
狀態欄組件(STATUSBAR)常見屬性:
屬性 說明
PANELS 設定狀態欄組件區域
SIMPLEPANEL 設定狀態欄單個區域
SIMPLETEXT 設定狀態欄單個區域的文本
ALIGNMENT 設定區域文本對齊方式
TEXT 設定區域顯示文本
WIDTH 設定區域寬度
進度條組件(PROGRESSBAR)常見屬性和事件:
屬性 說明
MAX 設定POSITION最大值
MIN 設定POSITION最小值
orIENTATION 設定組件顯示的方向
POSITION 設定進度條當前位置
SMOOTH 設定進度條的進度指針為平滑或間隔方式
STEP 設定調用STEPIT方法時所增加的量
事件 說明
STEPBY(INTEGER) 進度條增加值(由參數指定增量)
STEPIT 進度條增加值(由STEP屬性指定增量)
軌跡條組件(TRACKBAR)常見屬性:
屬性 說明
FRQUENCY 設定本控制刻度間的間隔值
LINESIZE 設定按方向鍵時移動量
MAX 設定POSITION最大值
MIN 設定POSITION最小值
orIENTATION 設定本組件顯示的方向
PAGESIZE 設定PAGEUP或PAGEDOWN的移動量
POSITION 設定本組件當前位置
SELEND 設定選定范圍的最后位置
SELSTART 設定選定范圍的開始位置
SLIDERVISIBLE 設定本組件中滑塊是否顯示
TICKMARKS 設定刻度顯示的方向位置
TICKSTYLE 設定組件刻度記號的配置方式
多頁標簽(PAGECONTROL)常見屬性
屬性 說明
MULTILINE 設定組件是否依標簽數目自定調整行數
ACTIVEPAGE 當前組件選中標簽
TABPOSITION 設定組件標簽所有位置
STYLE 設定組件標簽樣式
CAPTION 設定指定標簽標題
PAGEINDEX 指示標簽的位置
TABVISIBLE 設定指定標簽是否顯示
============================================================
名稱 類型 說明
abort 函數 引起放棄的意外處理
abs 函數 絕對值函數
addexitproc 函數 將一過程添加到運行時庫的結束過程表中
addr 函數 返回指定對象的地址
adjustlinebreaks 函數 將給定字符串的行分隔符調整為cr/lf序列
align 屬性 使控件位於窗口某部分
alignment 屬性 控件標簽的文字位置
allocmem 函數 在堆棧上分配給定大小的塊
allowgrayed 屬性 允許一個灰度選擇
ansicomparestr 函數 比較字符串(區分大小寫)
ansicomparetext 函數 比較字符串(不區分大小寫)
ansilowercase 函數 將字符轉換為小寫
ansiuppercase 函數 將字符轉換為大寫
append 函數 以附加的方式打開已有的文件
arctan 函數 余切函數
assignfile 函數 給文件變量賦一外部文件名
assigned 函數 測試函數或過程變量是否為空
autosize 屬性 自動控制標簽的大小
backgrounddi2001.jpg 屬性 背景色
beginthread 函數 以適當的方式建立用於內存管理的線程
bevelinner 屬性 控件方框的內框方式
bevelouter 屬性 控件方框的外框方式
bevelwidth 屬性 控件方框的外框寬度
blockread 函數 讀一個或多個記錄到變量中
blockwrite 函數 從變量中寫一個或多個記錄
borderstyle 屬性 邊界類型
borderwidth 屬性 邊界寬度
break 命令 終止for、while、repeat循環語句
brush 屬性 畫刷
caption 屬性 標簽文字的內容
changefileext 函數 改變文件的后綴
chdir 函數 改變當前目錄
checked 屬性 確定復選框選中狀態
chr 函數 返回指定序數的字符
closefile 命令 關閉打開的文件
color 屬性 標簽的顏色
columns 屬性 顯示的列數
comparestr 函數 比較字符串(區分大小寫)
concat 函數 合並字符串
continue 命令 繼續for、while、repeat的下一個循環
copy 函數 返回一字符串的子串
cos 函數 余弦函數
ctl3d 屬性 是否具有3d效果
cursor 屬性 鼠標指針移入后的形狀
date 函數 返回當前的日期
datetimetofiledate 函數 將delphi的日期格式轉換為dos的日期格式
datetimetostr 函數 將日期時間格式轉換為字符串
datetimetostring 函數 將日期時間格式轉換為字符串
datetostr 函數 將日期格式轉換為字符串
dayofweek 函數 返回星期的數值
dec 函數 遞減變量值
decodedate 函數 將日期格式分解為年月日
decodetime 函數 將時間格式分解為時、分、秒、毫秒
delete 函數 從字符串中刪除子串
deletefile 命令 刪除文件
diskfree 函數 返回剩余磁盤空間的大小
disksize 函數 返回指定磁盤的容量
dispose 函數 釋放動態變量所占的空間
disposestr 函數 釋放字符串在堆棧中的內存空間
ditherbackgrounddi2001.jpg?使背景色的色彩加重或減少50%
dragcursor 屬性 當鼠標按下時光標的形狀
dragmode 屬性 按動的作用方式
dropdowncount 屬性 容許的顯示數據項的數目
editmask 屬性 編輯模式
enabled 屬性 是否使標簽呈現打開狀態
encodedate 函數 將年月日合成為日期格式
encodetime 函數 將時、分、秒、毫秒合成為時間格式
endmargin 屬性 末尾邊緣
eof 函數 對有類型或無類型文件測試是否到文件尾
eoln 函數 返回文本文件的行結束狀態
erase 命令 刪除外部文件
exceptaddr 函數 返回引起當前意外的地址
exclude 函數 從集合中刪除一些元素
exceptobject 函數 返回當前意外的索引
exit 命令 立即從當前的語句塊中退出
exp 函數 指數函數
expandfilename 函數 返回包含絕對路徑的字符串
extendedselect 屬性 是否允許存在選擇模式,true時,multiselect才有意義
extractfiledir 函數 返回驅動器和路徑
extractfileext 函數 返回文件的后綴
extractfilename 函數 返回文件名
extractfilepath 函數 返回指定文件的路徑
fileage 函數 返回文件已存在的時間
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 函數 按給定大小釋放動態變量所占的空間
getdir 返回指定驅動器的當前目錄
getheapstatus 返回內存管理器的當前狀態
getmem 建立一指定大小的動態變量,並將指針指向該處
getmemorymanager 返回內存管理器的入口點
glyph 函數 按鈕上的圖象
halt 停止程序的執行並返回到操作系統
hi 返回參數的高地址位
high 返回參數的上限值
hint 屬性 提示信息
int 返回參數的整數部分
include 添加元素到集合中
insert 在字符串中插入子串
inttohex 將整型數轉換為十六進制數
inttostr 將整型數轉換為字符串
ioresult 返回最新的i/o操作完成狀態
isvalidident 測試字符串是否為有效的標識符
items 屬性 默認顯示的節點
kind 屬性 擺放樣式
largechange 屬性 最大改變值
layout 屬性 圖象布局
length 函數 返回字符串的動態長度
lines 屬性 缺省顯示內容
ln 函數 自然對數函數
lo 函數 返回參數的低地址位
loadstr 函數 從應用程序的可執行文件中裝載字符資源
lowercase 函數 將給定的字符串變為小寫
low 函數 返回參數的下限值
max 屬性 最大值
maxlength 屬性 最大長度
min 屬性 最小值
mkdir 命令 建立一子目錄
move 函數 從源到目標復制字節
multiselect 屬性 允許同時選擇幾個數據項
name 屬性 控件的名字
new 函數 建立新的動態變量並設置一指針變量指向他
newstr 函數 在堆棧上分配新的字符串
now 函數 返回當前的日期和時間
odd 測試參數是否為奇數
onactivate 事件 焦點移到窗體上時觸發
onclick 事件 單擊窗體空白區域觸發
ondblclick 事件 雙擊窗體空白區域觸發
onclosequery 事件 使用者試圖關閉窗體觸發
onclose 事件 窗體關閉后才觸發
oncreate 事件 窗體第一次創建時觸發
ondeactivate 事件 用戶切換到另一應用程序觸發
ondragdrop 事件 鼠標拖放操作結束時觸發
ondragover 事件 有其他控件從他上面移過觸發
onmousedown 事件 按下鼠標鍵時觸發
onmouseup 事件 釋放鼠標鍵時觸發
onmousemove 事件 移動鼠標時觸發
onhide 事件 隱藏窗體時觸發
onkeydown 事件 按下鍵盤某鍵時觸發
onkeypress 事件 按下鍵盤上的單個字符鍵時觸發
onkeyup 事件 釋放鍵盤上的某鍵時觸發
onpaint 事件 窗體上有新部分暴露出來觸發
onresize 事件 重新調整窗體大小觸發
onshow 事件 在窗體實際顯示之前瞬間觸發
ord 返回序數類的序數
outlinestyle 屬性 類型
outofmemoryerror 引起outofmemory意外
pageindex 屬性 頁索引
pages 屬性 頁
paramcount 函數 返回在命令行上傳遞給程序的參數數量
paramstr 函數 返回指定的命令行參數
pen 屬性 畫刷設置
pi 函數 返回圓周率pi
picture 屬性 顯示圖象
pictureclosed 屬性 設置closed位圖
pictureleaf 屬性 設置leaf位圖
pictureminus 屬性 設置minus位圖
pictureopen 屬性 設置open位圖
pictureplus 屬性 設置plus位圖
pos 函數 在字符串中搜索子串
pred 函數 返回先前的參數
random 函數 返回一隨機函數
randomize 函數 用一隨機數初始化內置的隨機數生成器
read 函數 對有格式的文件,讀一文件組件到變量中;
對文本文件,讀一個或多個值到一個或多個變量中
readln 函數 執行read過程,然后跳到文件下一行
readonly 屬性 只讀屬性
reallocmem 函數 分配一動態變量
rename 函數 重命名外部文件
renamefile 函數 對文件重命名
reset 函數 打開已有的文件
rewrite 函數 建立並打開一新的文件
rmdir 函數 刪除空的子目錄
round 函數 將實數值舍入為整型值
runerror 函數 停止程序的執行
scrollbars 屬性 滾動條狀態
seek 函數 將文件的當前指針移動到指定的組件上
seekeof 函數 返回文件的文件結束狀態
seekeoln 函數 返回文件的行結束狀態
selectedcolor 屬性 選中顏色
setmemorymanager 函數 設置內存管理器的入口點
settextbuf 函數 給文本文件指定i/o緩沖區
shape 屬性 顯示的形狀
showexception 函數 顯示意外消息與地址
sin 函數 正弦函數
sizeof 函數 返回參數所占的字節數
smallchange 屬性 最小改變值
sorted 屬性 是否允許排序
sqr 函數 平方函數
sqrt 函數 平方根函數
startmargin 屬性 開始邊緣
state 屬性 控件當前狀態
str 函數 將數值轉換為字符串
stralloc 函數 給以null結束的字符串分配最大長度-1的緩沖區
strbufsize 函數 返回存儲在由stralloc分配的字符緩沖區的最大字符數
strcat 函數 將一字符串附加到另一字符串尾並返回合並的字符串
strcomp 函數 比較兩個字符串
strcopy 函數 將一個字符串復制到另一個字符串中
strdispose 函數 釋放堆棧上的字符串
strecopy 函數 將一字符串復制到另一個字符串並返回結果字符串尾部的指針
strend 函數 返回指向字符串尾部的指針
stretch 屬性 自動適應控件的大小
strfmt 函數 格式化一系列的參數
stricomp 函數 比較兩個字符串(不區分大小寫)
stringtowidechar 函數 將ansi字符串轉換為unicode字符串
strlcat 函數 將一字符串中的字符附加到另一字符串尾並返回合並的字符串
strlcomp 函數 以最大長度比較兩個字符串
strlcopy 函數 將一個字符串中的字符復制到另一個字符串中
strlen 函數 返回字符串中的字符數
strlfmt 函數 格式化一系列的參數,其結果中包含有指向目標緩沖區的指針
strlicomp 函數 以最大長度比較兩個字符串(不區分大小寫)
strlower 函數 將字符串中的字符轉換為小寫
strmove 函數 將一個字符串中的字符復制到另一個字符串中
strnew 函數 在堆棧上分配一個字符串
strpas 函數 將以null結束的字符串轉換為pascal類的字符串
strpcopy 函數 將pascal類的字符串復制為以null結束的字符串
strplcopy 函數 從pascal類的最大長度字符串復制為以null結束的字符串
strpos 函數 返回一個字符串在另一個字符串中首次出現指針
strrscan 函數 返回字符串中最后出現字符的指針
strscan 函數 返回字符串中出現首字符的指針
strtodate 函數 將字符串轉換為日期格式
strtodatetime 函數 將字符串轉換為日期/時間格式
strtofloat 函數 將給定的字符串轉換為浮點數
strtoint 函數 將字符串轉換為整型
strtointdef 函數 將字符串轉換為整型或默認值
strtotime 函數 將字符串轉換為時間格式
strupper 函數 將字符串中的字符轉換為大寫
style 屬性 類型選擇
suce 函數 返回后繼的參數
swap 函數 交換參數的高低地址位
tabs 屬性 標記每一項的內容
tabindex 屬性 標記索引
text 屬性 顯示的文本
texttofloat 函數 將字符串(以null結束的格式)轉換為浮點數
time 函數 返回當前的時間
timetostr 函數 將時間格式轉換為字符串
trim 函數 從給定的字符串中刪除前導和尾部的空格及控制字符
trimleft 函數 從給定的字符串中刪除首部的空格及控制字符
trimright 函數 從給定的字符串中刪除尾部的空格及控制字符
trunc 函數 將實型值截取為整型值
truncate 函數 截去當前文件位置后的內容
unselectedcolor 屬性 未選中顏色
upcase 將字符轉換為大寫
uppercase 將給定的字符串變為大寫
val 函數 將字符串轉換為整型值
vararraycreate 函數 以給定的界限和維數建立變體數組
vararraydimcount 函數 返回給定變體的維數
vararrayhighbound 函數 返回給定變體數組維數的上界
vararraylock 函數 鎖定給定的變體數組
vararraylowbound 函數 返回給定變體數組維數的下界
vararrayof 函數 返回指定變體的數組元素
vararrayredim 函數 通過改變上限來調整變體的大小
vararrayunlock 函數 解鎖指定的變體數組
varastype 函數 將變體轉換為指定的類型
varcase 函數 將變體轉換為指定的類型並保存他
varclear 函數 清除指定的變體
varcopy 函數 將指定的變體復制為指定的變體
varformdatetime 函數 返回包含日期時間的變體
varisarray 函數 測試變體是否為數組
varisempty 函數 測試變體是否為unassigned
varisnull 函數 測試變體是否為null
vartodatetime 函數 將給定的變體轉換為日期時間
vartype 函數 將變體轉換為指定的類型並保存他
visible 屬性 控件的可見性
wantreturns 屬性 為true時,按回車鍵產生一個回車符;
為false時,按下ctrl+enter才產生回車符
write 命令 對有格式的文件,寫一變量到文件組件中;
對文本文件,寫一個或多個值到文件中
writeln 命令 執行write過程,然后輸出一行結束標志
widecharlentostring 函數 將ansi字符串轉換為unicode字符串
widecharlentostrwar 函數 將unicode字符串轉換為ansi字符串變量
widechartostring 函數 將unicode字符串轉換為ansi字符串
widechartostrvar 函數 將unicode字符串轉換為ansi字符串變量
===========================================================
◇[DELPHI]產生鼠標拖動效果
通過MouseMove事件、DragOver事件、EndDrag事件實現,例如在PANEL上的LABEL:
var xpanel,ypanel,xlabel,ylabel:integer;
PANEL的MouseMove事件:xpanel:=x;ypanel:=y;
PANEL的DragOver事件:xpanel:=x;ypanel:=y;
LABEL的MouseMove事件:xlabel:=x;ylabel:=y;
LABEL的EndDrag事件:label.left:=xpanel-xlabel;label.top:=ypanel-ylabel;
◇[DELPHI]取得WINDOWS目錄
uses shellapi;
getwindowsdirectory(windir,sizeof(windir));
或者從注冊表中讀取,位置:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion
SystemRoot鍵,取得如:C:\WINDOWS
trunc()
◇[DELPHI]關於文件、目錄操作
Chdir('c:\abcdir');轉到目錄
Mkdir('dirname');建立目錄
Rmdir('dirname');刪除目錄
GetCurrentDir;//取當前目錄名,無'\'
Getdir(0,s);//取工作目錄名s:='c:\abcdir';
Deletfile('abc.txt');//刪除文件
Renamefile('old.txt','new.txt');//文件更名
ExtractFilename(filelistbox1.filename);//取文件名
ExtractFileExt(filelistbox1.filename);//取文件后綴
◇[DELPHI]處理文件屬性
attr:=filegetattr(filelistbox1.filename);
if (attr and faReadonly)=faReadonly then ... //只讀
if (attr and faSysfile)=faSysfile then ... //系統
if (attr and faArchive)=faArchive then ... //存檔
if (attr and faHidden)=faHidden then ... //隱藏
◇[DELPHI]執行程序外文件
WINEXEC//調用可執行文件
winexec('command.com /c copy *.* c:\',SW_Normal);
winexec('start abc.txt');
ShellExecute或ShellExecuteEx//啟動文件關聯程序
function executefile(const filename,params,defaultDir:string;showCmd:integer):THandle;
ExecuteFile('C:\abc\a.txt','x.abc','c:\abc\',0);
ExecuteFile('http://tingweb.yeah.net','','',0);
ExecuteFile('mailto:tingweb@wx88.net','','',0);
◇[DELPHI]取得系統運行的進程名
var hCurrentWindow:HWnd;szText:array[0..254] of char;
begin
hCurrentWindow:=Getwindow(handle,GW_HWndFrist);
while hCurrentWindow <> 0 do
begin
if Getwindowtext(hcurrnetwindow,@sztext,255)>0 then listbox1.items.add(strpas(@sztext));
hCurrentWindow:=Getwindow(hCurrentwindow,GW_HWndNext);
end;
end;
◇[DELPHI]關於匯編的嵌入
Asm End;
可以任意修改EAX、ECX、EDX;不能修改ESI、EDI、ESP、EBP、EBX。
◇[DELPHI]關於類型轉換函數
FloatToStr//浮點轉字符串
FloatToStrF//帶格式的浮點轉字符串
IntToHex//整數轉16進制
TimeToStr
DateToStr
DateTimeToStr
FmtStr//按指定格式輸出字符串
formatDateTime('YYYY-MM-DD,hh-mm-ss',DATE);
◇[DELPHI]字符串的過程和函數
Insert(obj,target,pos);//字符串target插入在pos的位置。如插入結果大於target最大長度,多出字符將被截掉。如 Pos在255以外,會產生運行錯。例如,st:='Brian',則Insert('OK',st,2)會使st變為'BrOKian'。
Delete(st,pos,Num);//從st串中的pos(整型)位置開始刪去個數為Num(整型)個字符的子字串。例如,st:='Brian',則Delete(st,3,2)將變為Brn。
Str(value,st);//將數值value(整型或實型)轉換成字符串放在st中。例如,a=2.5E4時,則str(a:10,st)將使st的值為' 25000'。
Val(st,var,code);//把字符串表達式st轉換為對應整型或實型數值,存放在var中。St必須是一個表示數值的字符串,並符合數值常數的規則。在轉換過程中,如果沒有檢測出錯誤,變量code置為0,否則置為第一個出錯字符的位置。例如,st:=25.4E3,x是一個實型變量,則 val(st,x,code)將使X值為25400,code值為0。
Copy(st.pos.num);//返回st串中一個位置pos(整型)處開始的,含有num(整型)個字符的子串。如果pos大於st字符串的長度,那就會返回一個空串,如果pos在255以外,會引起運行錯誤。例如,st:='Brian',則Copy(st,2,2)返回'ri'。
Concat(st1,st2,st3……,stn);//把所有自變量表示出的字符串按所給出的順序連接起來,並返回連接后的值。如果結果的長度 255,將產生運行錯誤。例如,st1:='Brian',st2:=' ',st3:='Wilfred',則Concat(st1,st2,st3)返回'Brian Wilfred'。
Length(st);//返回字符串表達式st的長度。例如,st:='Brian',則Length(st)返回值為5。
Pos(obj,target);//返回字符串obj在目標字符串target的第一次出現的位置,如果target沒有匹配的串,Pos函數的返回值為0。例如,target:='Brian Wilfred',則Pos('Wil',target)的返回值是7,Pos('hurbet',target)的返回值是0。
◇[DELPHI]關於處理注冊表
uses Registry;
var reg:Tregistry;
reg:=Tregistry.create;
reg.rootkey:='HKey_Current_User';
reg.openkey('Control Panel\Desktop',false);
reg.WriteString('Title Wallpaper','0');
reg.writeString('Wallpaper',filelistbox1.filename);
reg.closereg;
reg.free;
◇[DELPHI]關於鍵盤常量名
VK_BACK/VK_TAB/VK_RETURN/VK_SHIFT/VK_CONTROL/VK_MENU/VK_PAUSE/VK_ESCAPE
/VK_SPACE/VK_LEFT/VK_RIGHT/VK_UP/VK_DOWN
F1--F12:$70(112)--$7B(123)
A-Z:$41(65)--$5A(90)
0-9:$30(48)--$39(57)
◇[DELPHI]操作Cookie
response.cookies("name").domain:='http://www.086net.com';
with response.cookies.add do
begin
name:='username';
value:='username';
end
◇[DELPHI]增加到文檔菜單連接
uses shellapi,shlOBJ;
shAddToRecentDocs(shArd_path,pchar(filepath));//增加連接
shAddToRecentDocs(shArd_path,nil);//清空
◇[DELPHI]判斷鼠標按鍵
if GetAsyncKeyState(VK_L(M,R)Button)<>0 then ... //左鍵
◇[DELPHI]設置窗體的最大顯示
onformCreate事件
self.width:=screen.width;
self.height:=screen.height;
◇[DELPHI]按鍵接受消息
OnCreate事件中處理:Application.OnMessage:=MyOnMessage;
procedure Tform1.MyOnMessage(var MSG:TMSG;var Handle:Boolean);
begin
if msg.message=256 then ... //ANY鍵
if msg.message=112 then ... //F1
if msg.message=113 then ... //F2
end;
◇[雜類]隱藏共享文件夾
共享效果:可訪問,但不可見(在資源管理、網絡鄰居中)
取共享名為:direction$
訪問://computer/dirction/
◇[DELPHI]隨機產生文本色
randomize;//隨機種子
memo1.font.color:=rgb(random(255),random(255),random(255));
◇[DELPHI]文件名的非法字符過濾
for i:=1 to length(s) do
if s in ['\','/',':','*','?','<','>','|'] then
◇[DELPHI]轉換函數的定義及說明
datetimetofiledate (datetime:Tdatetime):longint; 將Tdatetime格式的日期時間值轉換成DOS格式的日期時間值
datetimetostr (datetime:Tdatetime):string; 將Tdatatime格式變量轉換成字符串,如果datetime參數不包含日期值,返回字符串日期顯示成為00/00/00,如果datetime參數中沒有時間值,返回字符串中的時間部分顯示成為00:00:00 AM
datetimetostring (var result string;
const format:string;
datetime:Tdatetime); 根據給定的格式字符串轉換時間和日期值,result為結果字符串,format為轉換格式字符串,datetime為日期時間值
datetostr (date:Tdatetime) 使用shortdateformat全局變量定義的格式字符串將date參數轉換成對應的字符串
floattodecimal (var result:Tfloatrec;value:
extended;precision,decimals:
integer); 將浮點數轉換成十進制表示
floattostr (value:extended):string 將浮點數value轉換成字符串格式,該轉換使用普通數字格式,轉換的有效位數為15位。
floattotext (buffer:pchar;value:extended;
format:Tfloatformat;precision,
digits:integer):integer; 用給定的格式、精度和小數將浮點值value轉換成十進制表示形式,轉換結果存放於buffer參數中,函數返回值為存儲到buffer中的字符位數,buffer是非0結果的字符串緩沖區。
floattotextfmt (buffer:pchar;value:extended;
format:pchar):integer 用給定的格式將浮點值value轉換成十進制表示形式,轉換結果存放於buffer參數中,函數返回值為存儲到buffer中的字符位數。
inttohex (value:longint;digits:integer):
string; 將給定的數值value轉換成十六進制的字符串。參數digits給出轉換結果字符串包含的數字位數。
inttostr (value:longint):string 將整數轉換成十進制形式字符串
strtodate (const S:string):Tdatetime 將字符串轉換成日期值,S必須包含一個合法的格式日期的字符串。
strtodatetime (const S:string):Tdatetime 將字符串S轉換成日期時間格式,S必須具有MM/DD/YY HH:MM:SS[AM|PM]格式,其中日期和時間分隔符與系統時期時間常量設置相關。如果沒有指定AM或PM信息,表示使用24小時制。
strtofloat (const S:string):extended; 將給定的字符串轉換成浮點數,字符串具有如下格式:
[+|-]nnn…[.]nnn…[<+|-><E|e><+|->nnnn]
strtoint (const S:string):longint 將數字字符串轉換成整數,字符串可以是十進制或十六進制格式,如果字符串不是一個合法的數字字符串,系統發生ECONVERTERROR異常
strtointdef (const S:string;default:
longint):longint; 將字符串S轉換成數字,如果不能將S轉換成數字,strtointdef函數返回參數default的值。
strtotime (const S:string):Tdatetime 將字符串S轉換成TDATETIME值,S具有HH:MM:SS[AM|PM]格式,實際的格式與系統的時間相關的全局變量有關。
timetostr (time:Tdatetime):string; 將參數TIME轉換成字符串。轉換結果字符串的格式與系統的時間相關常量的設置有關。
◇[DELPHI]處理“右鍵菜單”方法
var
reg: TRegistry;
begin
reg := TRegistry.Create;
reg.RootKey:=HKEY_CLASSES_ROOT;
reg.OpenKey('*\shell\check\command', true);
reg.WriteString('', '"' + application.ExeName + '" "%1"');
reg.CloseKey;
reg.OpenKey('*\shell\diary', false);
reg.WriteString('', '操作(&C)');
reg.CloseKey;
reg.Free;
showmessage('DONE!');
end;
◇[DELPHI]發送虛擬鍵值ctrl V
procedure sendpaste;
begin
keybd_event(VK_Control, MapVirtualKey(VK_Control, 0), 0, 0);
keybd_event(ord('V'), MapVirtualKey(ord('V'), 0), 0, 0);
keybd_event(ord('V'), MapVirtualKey(ord('V'), 0), KEYEVENTF_KEYUP, 0);
keybd_event(VK_Control, MapVirtualKey(VK_Control, 0), KEYEVENTF_KEYUP, 0);
end;
◇[DELPHI]當前的光驅的盤符
procedure getcdrom(var cd:char);
var
str:string;
drivers:integer;
driver:char;
i,temp:integer;
begin
drivers:=getlogicaldrives;
temp:=(1 and drivers);
for i:=0 to 26 do
begin
if temp=1 then
begin
driver:=char(i+integer('a'));
str:=driver+':';
if getdrivetype(pchar(str))=drive_cdrom then
begin
cd:=driver;
exit;
end;
end;
drivers:=(drivers shr 1);
temp:=(1 and drivers);
end;
end;
◇[DELPHI]字符的加密與解密
function cryptstr(const s:string; stype: dword):string;
var
i: integer;
fkey: integer;
begin
result:='';
case stype of
0: setpass;
begin
randomize;
fkey := random($ff);
for i:=1 to length(s) do
result := result+chr( ord(s) xor i xor fkey);
result := result + char(fkey);
end;
1: getpass
begin
fkey := ord(s[length(s)]);
for i:=1 to length(s) - 1 do
result := result+chr( ord(s) xor i xor fkey);
end;
end;
□◇[DELPHI]向其他應用程序發送模擬鍵
var
h: THandle;
begin
h := FindWindow(nil, '應用程序標題');
PostMessage(h, WM_KEYDOWN, VK_F9, 0);//發送F9鍵
end;
□◇[DELPHI]得到圖像上某一點的RGB值
procedure Tform1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var
red,green,blue:byte ;
i:integer;
begin
i:= image1.Canvas.Pixels[x,y];
Blue:= GetBvalue(i);
Green:= GetGvalue(i):
Red:= GetRvalue(i);
Label1.Caption:=inttostr(Red);
Label2.Caption:=inttostr(Green);
Label3.Caption:=inttostr(Blue);
end;
◇[DELPHI]如何判斷字符串是否是有效EMAIL地址
function IsEMail(EMail: String): Boolean;
var s: String;ETpos: Integer;
begin
ETpos:= pos('@', EMail);
if ETpos > 1 then
begin
s:= copy(EMail,ETpos+1,Length(EMail));
if (pos('.', s) > 1) and (pos('.', s) < length(s)) then
Result:= true else Result:= false;
end
else
Result:= false;
end;
DELPHI]取機器BIOS信息
with Memo1.Lines do
begin
Add('MainBoardBiosName:'+^I+string(Pchar(Ptr($FE061))));
Add('MainBoardBiosCopyRight:'+^I+string(Pchar(Ptr($FE091))));
Add('MainBoardBiosDate:'+^I+string(Pchar(Ptr($FFFF5))));
Add('MainBoardBiosSerialNo:'+^I+string(Pchar(Ptr($FEC71))));
end;
◇[DELPHI]網絡下載文件
uses UrlMon;
function DownloadFile(Source, Dest: string): Boolean;
begin
try
Result := UrlDownloadToFile(nil, PChar(source), PChar(Dest), 0, nil) = 0;
except
Result := False;
end;
end;
if DownloadFile('http://www.borland.com/delphi6.zip, 'c:\kylix.zip') then
ShowMessage('Download succesful')
else ShowMessage('Download unsuccesful')
◇[DELPHI]解析服務器IP地址
uses winsock
function IPAddrToName(IPAddr : String): String;
var
SockAddrIn: TSockAddrIn;
HostEnt: PHostEnt;
WSAData: TWSAData;
begin
WSAStartup($101, WSAData);
SockAddrIn.sin_addr.s_addr:= inet_addr(PChar(IPAddr));
HostEnt:= gethostbyaddr(@SockAddrIn.sin_addr.S_addr, 4, AF_INET);
if HostEnt<>nil then result:=StrPas(Hostent^.h_name) else result:='';
end;
◇[DELPHI]取得快捷方式中的連接
function ExeFromLink(const linkname: string): string;
var
FDir,
FName,
ExeName: PChar;
z: integer;
begin
ExeName:= StrAlloc(MAX_PATH);
FName:= StrAlloc(MAX_PATH);
FDir:= StrAlloc(MAX_PATH);
StrPCopy(FName, ExtractFileName(linkname));
StrPCopy(FDir, ExtractFilePath(linkname));
z:= FindExecutable(FName, FDir, ExeName);
if z > 32 then
Result:= StrPas(ExeName)
else
Result:= '';
StrDispose(FDir);
StrDispose(FName);
StrDispose(ExeName);
end;
◇[DELPHI]控制TCombobox的自動完成
{'Sorted' property of the TCombobox to true }
var lastKey: Word; //全局變量
//TCombobox的OnChange事件
procedure Tform1.AutoCompleteChange(Sender: TObject);
var
SearchStr: string;
retVal: integer;
begin
SearchStr := (Sender as TCombobox).Text;
if lastKey <> VK_BACK then // backspace: VK_BACK or $08
begin
retVal := (Sender as TCombobox).Perform(CB_FINDSTRING, -1, LongInt(PChar(SearchStr)));
if retVal > CB_Err then
begin
(Sender as TCombobox).ItemIndex := retVal;
(Sender as TCombobox).SelStart := Length(SearchStr);
(Sender as TCombobox).SelLength :=
(Length((Sender as TCombobox).Text) - Length(SearchStr));
end; // retVal > CB_Err
end; // lastKey <> VK_BACK
lastKey := 0; // reset lastKey
end;
//TCombobox的onKeyDown事件
procedure Tform1.AutoCompleteKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
lastKey := Key;
end;
◇[DELPHI]如何清空一個目錄
function EmptyDirectory(TheDirectory :String ; Recursive : Boolean) :
Boolean;
var
SearchRec : TSearchRec;
Res : Integer;
begin
Result := False;
TheDirectory := NormalDir(TheDirectory);
Res := FindFirst(TheDirectory + '*.*', faAnyFile, SearchRec);
try
while Res = 0 do
begin
if (SearchRec.Name <> '.') and (SearchRec.Name <> '..') then
begin
if ((SearchRec.Attr and faDirectory) > 0) and Recursive
then begin
EmptyDirectory(TheDirectory + SearchRec.Name, True);
RemoveDirectory(PChar(TheDirectory + SearchRec.Name));
end
else begin
DeleteFile(PChar(TheDirectory + SearchRec.Name))
end;
end;
Res := FindNext(SearchRec);
end;
Result := True;
finally
FindClose(SearchRec.FindHandle);
end;
end;
◇[DELPHI]安裝程序如何添加到Uninstall列表
操作注冊表,如下:
1.在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall鍵下建立一個主鍵,名稱任意。
例HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MyUninstall
2.在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MyUnistall下鍵兩個串值,
這兩個串值的名稱是特定的:DisplayName和UninstallString。
3.給串DisplayName賦值為顯示在“刪除應用程序列表”中的名稱,如'Aiming Uninstall one';
給串UninstallString賦值為執行的刪除命令,如 C:\WIN97\uninst.exe -f"C:\TestPro\aimTest.isu"
◇[DELPHI]截獲WM_QUERYENDSESSION關機消息
type
Tform1 = class(Tform)
procedure WMQueryEndSession(var Message: TWMQueryEndSession); message WM_QUERYENDSESSION;
procedure CMEraseBkgnd(var Message:TWMEraseBkgnd);Message WM_ERASEBKGND;
private
{ Private declarations }
public
{ Public declarations }
end;
procedure Tform1.WMQueryEndSession(var Message: TWMQueryEndSession);
begin
Showmessage('computer is about to shut down');
end;
◇[DELPHI]得到硬盤序列號
var SerialNum : pdword; a, b : dword; Buffer : array [0..255] of char;
begin
if GetVolumeInformation('c:\', Buffer, SizeOf(Buffer), SerialNum, a, b, nil, 0) then Label1.Caption := IntToStr(SerialNum^);
end;
=======================================================
復制代碼
作者:Rogee
出處:Http://Rogee.cnblogs.com/
心得:BLOG是什么,它是一個記錄學習過程的東西