[转]Delphi 控件属性和事件

时间:2022-05-13 16:02:57
常用【属性】
 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;
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; ======================================================= 原文地址:http://www.cnblogs.com/rogee/archive/2010/09/17/1829574.html