[转]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;
  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
文章来自:http://www.cnblogs.com/go-jzg/p/4177874.html
© 2021 jiaocheng.bubufx.com  联系我们
ICP备案:鲁ICP备09046678号-3