Delphi中的Application对象.doc_第1页
Delphi中的Application对象.doc_第2页
Delphi中的Application对象.doc_第3页
Delphi中的Application对象.doc_第4页
Delphi中的Application对象.doc_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Delphi中的Application对象TApplication是用于Delphi应用程序的类型,该类在单元forms中声明。TApplication是Delphi构造 Windows应用程序所需的类型,其方法和属性集中包括了 Windows操作系统中创建、运行和销毁应用程序等既定的基本操作和属性,因此在用Delphi编写 Windows应用程序时简化了用户和Windows环境之间的借口。 TApplication封装了以下功能:Windows消息处理上下文联机帮助菜单加速和键盘处理异常处理管理由Windows操作系统为应用程序定义的基本部分,如主窗口、窗口类等每个Delphi应用程序自动声明一个Application变量作为应用程序的实例。如果Delphi应用程序不是一个Web服务器应用程序,那么该变量一定是TApplication类型。因此TAppli-cation不需要出现在组件选择板(component palette)中,并在窗体设计器(form designer)中也不能对其进行可视化操作,故TApplication不具有发布属性(published properties)。不过,TApplication的公共属性(public properites)在设计时(design-time)是可以设置或修改的,如在Project|Options对话框的Forms和Application页面中下面就向大家介绍TApplication中的大部分属性、方法和事件属性Active属性Active指明了应用程序是否处于活动状态且拥有焦点。定义如下:property Active: Boolean;Active是只读属性。当应用程序是活动状态时Active为True,否则为False。TApplica-tion的构造器(constructor) 置Active为True。如果窗口或应用程序拥有焦点,那么该应用程序是活动的。当其它应用程序的窗口成为活的时,当前应用程序即为非活动的。应用程序关闭时TApplication的析构器(destructor) 置Active为False在应用程序中,可以用一个计时器(TTimer)来检查属性Active的值,从而确定当前的应用程序是否是活动状态,以便作出相应的处理。也可以在事件OnActive和事件OnDeactive中定义指定的操作属性DialogHandle属性DialogHandle提供使Delphi应用程序使用非Delphi对话框的一种机制。定义如下:property DialogHandle: HWnd;当使用API函数CreateDialog创建一个非模式化对话框时需要使用 DialogHandle,并且需要查看应用程序消息循环中的消息以进行相应的操作。比如,当一个非模式化对话框收到一条激活消息(WM_NCACTIVATE)时可以将其句柄赋值到 DialogHandle,当对话框收到一条解除激活消息时置DialogHandle为0属性ExeName属性ExeName包含了可执行的应用程序文件名极其路径信息。定义如下:property ExeName: string;ExeName是只读属性。使用ExeName能够得到应用程序可执行文件的文件名这是一个很有用的属性。例如,运行光盘中的应用程序 f:mediamyapp.exe 时,可能需要访问目录 f:mediadata 中的文件或者确定应用程序所在的驱动器盘符。 这时可以使用Delphi提供的函数ExtractFilePath和ExtractFileName对属性ExeName 进行解析,从而得到需要的信息属性Handle属性Handle提供了对应用程序主窗口句柄的访问。定义如下:property Handle: HWND;当调用一个需要父窗口句柄的 Windows API函数时需要使用Handle属性。例如,应用程序中某个动态链接库(DLL) 可能需要父窗口句柄以使得其自身能够弹出并且显示在最前端。使用Application.Handle构成应用程序的若干窗口,使得这些窗口在应用程序中能够被最小化、恢复、有效或无效。注意:编写一个使用 VCL窗体的动态链接库时,应将主运行程序中主窗口的句柄赋值到该动态链接库的Application.Handle属性。这样就使得动态链接库的窗体成为主应用程序的一部分。需要特别指出的是,永远不要在EXE应用程序中给Application.Handle赋值属性HelpFile属性HelpFile指明了应用程序用于显示帮助内容的文件名。定义如下:property HelpFile: string;使用HelpFile是为了应用程序拥有一个使用标准Windows帮助系统的帮助文件。Windows显示由HelpFile属性指明的帮助文件。要让应用程序实现这一点,必须在运行时为HelpFile属性赋予一个文件名的值,或者在设计时Project|Options对话框的Application页面中指定一个帮助文件。默认情况下,HelpFile是一个空串(),并且应用程序的帮助方法忽略所有的试图显示帮助。如果HelpFile包括任何内容,帮助主题的方法将根据文件名调出 Windows帮助系统以提供联机帮助注意:如果活动窗口的帮助文件已指定,则该文件将优先于应用程序的帮助文件显示属性Hint属性Hint指明了出现在帮助提示框(Help Hint box)中的文本字符串。定义如下:property Hint:string;TApplication.Hint属性就是鼠标正在移动经过的控件或菜单项的 Hint值。该属性也能被赋予一个向用户提供动作、错误或其它信息的字符串值。因此,使用Hint属性也能够:从控件传递提示信息到另一显示区,例如通过OnHint事件句柄将提示显示到状态栏中。这时是读取Hint属性。当应用程序正在进行某一动作时简要描述其状态。这时是设置Hint属性。当OnHint事件发生时帮助提示才出现。因此,即使TApplication的Hint属性被赋予状态栏的标题,例如状态栏控件的标题显示Hint属性的当前字符串值,也应归于OnHint事件Hint字符串包括两部分:短提示和长提示。短提示用于简洁的弹出提示;长提示与短提示之间用竖线|隔开,用于在状态栏中显示较详细的提示信息。可以使用单元 Controls中提供的字符串函数GetShortHint和GetLongHint从Hint属性中分解得到短提示和长提示注意:当应用程序通过设置Hint属性向用户提供某一事件发生的信息时应当切记,默认情况下,当鼠标移动经过某一控件时,Hint字符串被复位到该控件的Hint属性值 属性HintHidePause属性HintHidePause 指定了鼠标尚未从控件或菜单项上移开、在隐藏帮助提示之前的时间间隔。定义如下:property HintHidePause: Integer;用HintHidePause以毫秒为单位指定等待时间,在TApplication 的构造器中该属性被置为2500毫秒(2.5秒)。控件或菜单项的帮助提示在Hint属性中指定注意:默认应将HintHidePause的值预先确定为HintPause属性值的3到5倍较合适属性MainForm属性MainForm唯一标识了应用程序的主窗体。定义如下:property MainForm.: TForm;属性MainForm指定的窗体不一定等同于应用程序的主窗口。属性MainForm的值一定是由方法CreateForm创建的所有窗体中的第一个窗体,但该窗体未必是应用程序的主窗口。新建一个工程时,MainForm属性值自动置为Form1。在设计时可通过Project|Options对话框中的Forms页面在多个窗体中指定其中之一为MainForm在运行时是不能修改MainForm属性的,因为该属性是只读的主窗体是应用程序主题创建的第一个窗体。主窗体关闭即应用程序终止在应用程序中,可以调用方法Application.MainForm.Close来终止应用程序运行,可以获取Application.MainForm.Top、Application.MainForm.Left 等属性的值从而确定当前活动窗口的位置以及尺寸等属性ShowMainForm属性ShowMainForm确定了是否在应用程序启动时显示主窗体。定义如下:property ShowMainForm.: Boolean;应用程序用ShowMainForm属性控制是否以及何时显示其主窗体TApplication的构造器置ShowMainForm为True。默认情况下主窗体将被显示,MainForm属性中指明了主窗体 如果需要在应用程序启动时隐藏主窗体,那么应在主工程文件中调用 Application.Run之前置ShowMainForm为False,并且确信主窗体的Visible属性值为False。这在许多实现OLE自动化服务器是很有用的,比如在启动自动化服务时隐藏服务器程序的主窗体另外,如果需要在应用程序启动时显示一个闪出图片(Flash) 并为应用程序的环境做一些准备,同时需要禁止主窗体显示,这也可以利用属性ShowMainForm来实现。比如Delphi启动时就禁止了主窗体的显示。 属性Terminated属性Terminated报告应用程序是否收到终止程序的Windows消息WM_QUIT。定义如下:property Terminated: Boolean;Terminated是只读属性。该属性主要用于调用ProcessMessages 方法时应用程序不必在停止后试图处理Windows 消息。当ProcessMessages方法收到消息WM_QUIT时,Terminated将被置为TrueDelphi应用程序总会因为主窗体或应用程序关闭,或者因为Terminate 方法被调用而收到消息WM_QUIT当应用程序执行强度较大、占用系统资源较多的运算时,应当周期性地调用Applicati-on.ProcessMessages方法,并检查属性Application.Terminated以确定是否需要终止运算从而终止应用程序属性UpdateFormatSettings属性UpdateFormatSettings指明了当用户改变系统配置时应用程序是否自动更新格式设置。定义如下:property UpdateFormatSettings: Boolean;使用UpdateFormatSettings属性应用程序可以控制自动更新格式设置。TApplication的构造器置该属性为True。当应用程序收到消息WM_WININICHANGE时将检查UpdateFormatSett-ings属性。建议使用默认的格式设置,也就是Windows本地的设置。可以置UpdateFormatSe-ttings为False以避免在Delphi应用程序执行期间改变格式设置属性UpdateMetricSettings属性UpdateMetricSettings属性指明是否对提示窗口字体和图标标题等相关设置进行更新。定义如下:property UpdateMetricSettings: Boolean;UpdateFormatSettings属性指明系统中提示窗口字体和图标标题等设置改变是否反映到应用程序中相关设置的改变TApplication的构造器置UpdateMetricSettings的初始值为True方法BringToFront方法BringToFront设置应用程序中最近一次的活动窗口到桌面上所有窗口的最前端。其定义如下:procedure BringToFront;用BringToFront方法可以找到属于主窗体的最近一次的活动窗口并且将其置于最前端BringToFront方法也可以测试和查看一个窗口在成为最前端窗口之前是否是可见 (Visible)和有效的(Enabled) 例如,当应用程序收到邮件时,可能需要将专门的处理程序激活并置于Windows 桌面的最前端。这时就可以调用Application.BringToFront方法来实现方法CreateForm方法CreateForm方法用于创建新的窗体(form)。定义如下:procedure CreateForm(FormClass: TFormClass; var Reference);Delphi应用程序总会调用CreateForm方法。因此程序员很少有必要直接调用CreateForm方法。一个典型的Delphi工程在工程的主体代码部分包括一处或多处调用CreateForm方法,并且在使用窗体设计器时自动控制窗体的创建。也可以在运行时可以调用CreateForm方法来动态创建窗体CreateForm方法根据FormClass 参数创建一个新的指定的窗体并且将窗体赋予到变量参数Reference。 新创建的窗体的所有者就是对象Application。 应用程序将第一个调用CreateForm 创建的窗体默认为工程的主窗体方法HandleException方法HandleException为应用程序的异常提供默认的句柄。定义如下:procedure HandleException(Sender: TObject);方法HandleException 对于编写特定组件的作者来说是很有用的,因为它可以产生一个不必对Windows 消息产生响应的事件。在应用程序中可以利用OnException 事件句柄将其它的异常操作控制在自定义的代码中 在应用程序代码中,如果异常跳过了所有的try 块,那么应用程序将自动调用HandleException方法,并将显示一个提示有错误发生的对话框。除非异常对象是EAbort,此时HandleException将调用OnException句柄(如果存在),否则将调用ShowException显示一个提示有错误发生的对话框方法UnhookMainWindow UnhookMainWindow方法用于释放由HookMainWindow方法挂在主窗体的程序。定义如下:type TWindowHook = function(var Message: TMessage): Boolean of object;procedure UnhookMainWindow(Hook: TWindowHook);用UnhookMainWindow可以释放挂钩窗口。在参数Hook中指明对话框过程 TwindowHook 类型是调用HookMainWindow方法的参数。该参数是非Delphi对话框中调用对话程序的方法指针。对话程序与窗口程序相似,都是为对话框处理消息,只是语法不同 事件OnActivate当应用程序成为活动状态时OnActivate事件发生。定义如下:type TNotifyEvent = procedure (Sender: TObject) of object;property OnActivate: TNotifyEvent;用OnActive事件编写一个事件句柄来完成当应用程序成为活动状态时指定特别的处理 当一个Windows 应用程序最初运行时或其焦点从另一个Windows 应用程序转移回到当前应用程序时,该应用程序成为活动状态事件OnDeactivate 当应用程序成为非活动状态时OnDeactivate事件发生。定义如下:type TNotifyEvent = procedure (Sender: TObject) of object;property OnDeactivate: TNotifyEvent;在应用程序成为非活动状态之前可以立即触发OnDeactive事件,从而完成在该事件句柄中指定的特别处理。当用户从当前应用程序转换到另一应用程序时,当前应用程序的OnDea-ctive事件即发生事件OnException 当应用程序中的某个无句柄的异常发生时事件OnException发生。定义如下:type TExceptionEvent = procedure (Sender: TObject; E: Exception) of object;property OnException: TExceptionEvent;可以通过OnException 事件来改变在应用程序中无句柄的异常发生时的默认动作。在方法TApplication.HandleException方法中,OnException 事件句柄被自动调用 OnException 事件仅用于处理在进行消息处理时发生的异常。在Application.Run 执行前或执行后发生的异常不会导致OnException事件发生 如果某个异常在应用程序代码的try 块中被忽略,那么应用程序将自动调用HandleExc-eption方法。除非异常对象是EAbort,此时HandleException 将调用OnException句柄(如果存在), 否则将调用ShowException 显示一个提示有错误发生的对话框 TExceptionEvent类型是OnException事件的类型,该类型在应用程序中指向一个处理异常的方法。参数Sender是引发异常的对象,而参数E 是异常对象事件OnHelp 当应用程序收到帮助请求时OnHelp事件发生。定义如下:type THelpEvent = function (Command: Word; Data: Longint; var CallHelp: Boo-lean): Boolean of object;property OnHelp: THelpEvent;用OnHelp编写一个事件句柄以完成有请求帮助时特别的处理。HelpContext方法和Help-Jump方法自动引发OnHelp事件 在事件发生之后置CallHelp为True使VCL调用WinHelp;置CallHelp为False以防止VCL调用WinHelp。 Delphi应用程序中所有与帮助有关的方法都经过OnHelp事件。仅当OnHelp事件中的CallHelp参数返回True或OnHelp事件没有被指定到有效的句柄时,WinHelp被调用事件OnHint 当鼠标指针移动经过某个控件或菜单项并且该控件或菜单项能够显示帮助提示时,事件OnHint发生。定义如下:type TNotifyEvent = procedure (Sender: TObject) of object;property OnHint: TNotifyEvent;用OnHint编写的事件句柄能够在OnHint事件发生时执行指定的操作。当用户停放鼠标指针在某个控件上,并且该控件的Hint属性值不是空串(),这时OnHint事件将发生 通常用OnHint事件显示控件或菜单项Hint属性的值作为某个面板控件(如TStatusBar)的标题,因此把面板(panel) 用作状态栏(status bar)。当OnHint事件发生时,Hint属性通常被指定为一个帮助提示(Help Hint)和一个在别处显示的长提示(longer hint)事件OnIdle 当应用程序成为空闲状态时OnIdle事件发生。定义如下:type TIdleEvent = procedure (Sender: TObject; var Done: Boolean) of object;property OnIdle: TIdleEvent用OnIdel编写一个事件句柄当应用程序空闲时完成指定的操作。当应用程序不执行任何代码时即为空闲的。例如,当应用程序等待用户输入时该应用程序是空闲的 TIdelEvent类型是OnIdel事件的类型,它指向一个当应用程序空闲时运行的方法。对象TIdelEvent有一个默认为True的布而变量Done。当Done为True时,Windows API 函数WaitM-essage将在OnIdel返回时被调用。WaitMessage 使其它应用程序得到控制焦点直到应用程序的消息队列中出现一条新的消息。当参数Done为False 且应用程序不忙时,应用程序不会使其它应用程序得到控制焦点 当应用程序转为空闲状态时,OnIdel事件仅发生一次,直到参数Done置为True才可能发生下一次OnIdel事件。应用程序置Done为False消除了紊乱的CPU时间计数,而该计数可能影响整个系统的性能Delphi程序示例interfaceuses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,ComCtrls;type TForm1 = class(TForm) StatusBar1: TStatusBar; procedure FormCreate(Sender: TObject); private Private declarations public procedure CustomDisplayHint(Sender: TObject); /Line 16 Public declarations end;varForm1: TForm1;implementation$R *.DFMprocedure TForm1.CustomDisplayHint(Sender: TObject);begin StatusBar1.SimpleText := GetLongHint(Application.Hint); /Line 29end;procedure TForm1.FormCreate(Sender: TObject);begin Application.OnHint := CustomDisplayHint; /Line 34end;end. 在上面的代码中,第16行是开发者定义的用于事件OnHint的方法 CustomDisplayHint; 第29行是该方法的实现部分,将Application.Hint中的长提示解析出来,并在状态栏中显示出来; 第34行是在窗体创建时将方法CustomDisplayHint 与事件Application.OnHint的句柄相关联。 当鼠标移动并停留在某个控件(如按钮)上时,如果该控件各级宿主对象的ShowHint属性(如果有)的值都为True并且其ShowHint属性的值也为True,那么该控件的Hint属性值中的短提示将以提示窗口的形式浮动显示出来,而相应的长提示则按照事件句柄中的指定操作将显示在状态栏中。简介 TApplication继承关系:TObject TPersistent TComponent TApplication组件的属性:ActiveAllowTestingDialogHandleExeNameHandleHelpFileHintHintColorHintHidePauseHintPauseHintShortPauseIconMainFormShowHintShowMainFormTerminatedTitleUpdateFormatSettingsUpdateMetricSettings从TCompnent继承来的:ComObjectComponentCountComponentIndexComponentsComponentStateComponentStyleDesignlnfoNameOwnerTagVCLComObjectTApplication组件的方法:BringToFrontCancelHintControlDestroyedCreateCreateFomCreateHandleDestroyHandleExceptionHandleMessageHelpCommandHelpContextHelpJumpHideHintHintMouseMessageHookMainWindowlnitializeMessageBoxMinimizeNormalizeTopMostsNormalizeAllTopMostsProcessMessagesRestoreRestoreTopMostsRunShowExceptionTerminateUnhookMainWindow从TComponent继承来的:DestroyComponentsDestroyingFindComponentFreeNotificationFreeOnReleaseGetParentComponentHasParentInsertComponentRemoveComponentSafeCallException从TPersistent继承来的:AssignGetNamePathTObject继承来的:ClassInfoClassNarneClassNameIsClassParentClassTypeCleanupInstanceDefaultHandlerDispatchFieldAddressFreeFreelnstanceGetInterfaceGetInterfaceEntryGetInterfaceTableInheritsFormInitInstanceInstanceSizeMethodAddressMethodNameNewInstanceTApplication组件的事件:OnActivateOnDeactivateOnExceptionOnHelpOnHintOnIdleOnMessageOnMinimizeOnRestoreOnShowHintActive属性 对应对象:TApplication声明:property Active: Boolean;功能:Active属性是用来声明应用程序是否被激活。Active属性是在运行时有效,它是只读类型的。当应用程序处于激活状态并且具有焦点时,它将返回真,否则将返回假。例子:/Place a timer on the form, and change its interval property to 100 procedure TForml.Timer1Timer(Sender: TObject); begin if Application.Active = True then Forml.Caption := Application is active; else Forml.Caption := Application is inactive; end; BringToFront方法 对应对象:TApplication声明:procedure BringToFront;功能BringToFront方法用于将用户的应用程序的主窗体窗口放置到Windows Desktop上的其他窗口的前面。Windows Desktop有一个Z轴的次序,确定一个窗口相对于其他窗口的逻辑位置(上或下)。这个Z轴次序允许窗口以叠加的形式出现,同时确定当前的带有焦点的窗口。BringToFront使用户的应用程序的主窗体的窗口放置在Z轴次序的上部,这样将使它拥有焦点并且处于被激活的状态,使其出现在Desktop的所有窗口之上。例子:/Rathcr annoying example that forces your window to the front procedure TForml.Timer1Timer(Sender: TObject); begin if Application.Active = False then Application.BringToFront; end; CreateFom方法 对应对象:TApp1ication声明:procedure CreateForm(InstanceClass: TComponentClass; var Reference);功能:CreateForm方法用来创建一个新的窗体。InstanceClass是要被创建的窗体的类型。Reference是赋予窗体的变量。Application对象拥有新创建的窗体。在项目源代码中至少应调用一次CreateForm,且该应用程序的每一个窗体都将被调用,这些调用是由Delphi自动地调用,不需要用户人工调用。例子:/Project source use View|Project Source from the IDE program Projectl; uses Forms, Unit1 in Unitl.pas Form1; $R *.RES begin Application.Initialize; Application.CreateForm(TForm1, Forml); Application.Run; end; ExeName属性 对应对象:TApplication声明;property ExeName: string;功能:ExeName包含了应用程序可执行文件的目录和文件名。ExeName属性在运行时有效,并且为只读型的。它包含有应用程序的可执行文件名。Handle属性 对应对象:TApplication声明:propeny Handle: HWND;功能:包含有应用程序窗口的句柄。Handle属性在处理一个需要窗口句柄的API的调用时使用的。通常用户不需要自己去访问Application.Handle属性。注意这里指的是不可视的应用程序窗口的句柄并不是主体窗口的句柄。要获得主体窗口的句柄应使用TForm对象的Handle属性。HeIpCommand方法 对应对象:TApplication声明:fuction HelpCommand(Command:Integer;Data:Longint):Boolean; 功能:HelpCommand允许用户访问Windows Help API中的任何命令。 Command是需要被调用的Windows Help API命令。Data是需要被传送给Help命令的数据。HelpCommand方法调用了Windows Help的文件WINHELP.EXE,并且将它传送给由Command参数指定的命令及由Data参数指定的数据,被发送的命令指定了请求帮助的类型,而被发送的数据则依请求的命令而确定。以下例出了可以被传送给HelpCommand的部分命令和数据值。 命 令 值 数 据 值 意 义 HELP_COMMAND 包含将要执行的Help宏命令或一毓由分号分隔的Help宏命令的字符串地址 执行Help宏命令或宏命令集。 HELP_CONTENTS 0 此项是为与4.0版本之前的帮助引擎相兼容而提供的命令。对应32位应用程序应使用HELP_FINDER命令。 HELP_CONTEXT 主题的上下文标识符 显示由Data值标识的标题。 HELP_CONTEXTPOPUP 主题的上下文标识符 创建一个显示了Data值指定的主题的弹出式窗口。 HELP_FINDER 0 显示一个4.0版本Helptopics对话框。 HELP_FORCEFILE 0 用于保证WinHelp显示正确的Help文件,如果不是正确的显示,则装载正确的Help文件。 HELP_INDEX 0 该命令与4.0以前的版本相兼容。新的应用程序应该使用HELP_FINDER来代替。 HELP_KEY 关键字字符串的地址 显示由关键字标识的标题,关键字的地址由Data传递。 HELP_PARTIALKEY 关键字字符串的地址 如果完全匹配,则显示由关键字标识的主题,关键字的地址由Data传递,如果有一个以上的匹配,则显示Index标签。 HELP_QUIT 0 如果没有其他的应用程序请求Help,则将关闭Help应用程序。 HELP_SETCONTENTS 对Contents主题的上下文的标识符 当用户按击Contents按钮时,指定要显示的主题。 HELP_SETINDEX 对索引主题上下文的标识符 指定要在Index中显示的关键字列表。 HELP_HELPONHELP 0 使用Windows Help显示Help。 例子: /Load Windows Help procedure TForm1.mnuWindowsHelpClick(Sender:TObject); begin Application.HelpFile:=winhelp.hlp; Application.HelpCommand(HELP_FINDER,0); End; HelpContext方法 对应对象:TApplication 声明:function HelpContext(Context:IhelpContext):Boolean; 功能:HelpContext方法用来打开Windows Help并且显示指定的屏幕。 在调用HelpContext之前,用户必须保证Application的HelpFile属性被设置成为有效的Help文件。HelpContext将用来打开由HelpFile属性指定Help文件并且装载由context参数指定的屏幕。HelpContext的类型为ThelpContext,它是一个简单的整数,是在Help内定义的ID值,并可以通过这个控件的HelpContext的属性和界面元素相关联。为了创建Help文件可以参考Mircosoft Help WorkShop用户手册。 例子: procedure TForm1.mnuHelpClick(Sender:TObject); begin Application.HelpFile:=my_apps_help.hlp; Application.HelpContext(11); End; HelpFile属性 对应对象:TApplication 声明:property HelpFile:String; 功能:HelpFile属性指定应用程序所使用的Help文件名。 HelpFile属性在运行时是有效的,缺少时此值为空字符串。如果使用之前没有将HelpFile设置成为一个有效的文件名,则在调用了Help方法之后,应用程序将对此操作忽略。 例子: procedure TForm1.mnuWindowsHelpClick(Sender:TObject); begin Application.HelpFile:=winhelp.hlp; Application.HelpCommand(HELP_FINDER,0); end; HelpJump方法 对应对象:TApplication 声明:function HelpJump(const JumpID:string):Boolean; 功能:HelpJump方法用于打开一个Windows Help的指定的页。 HelpJump方法驱动Windows Help应用程序的WINHELP.EXE文件,并且打开了包含有JumpID参数所指定的上下文字符串的页。如果Application的HelpFile属性包含有一个有效的Help文件名的引用,则HelpJump将返回真,否则返回假。为了创建一个上下文字符串可以参考Mircosoft Help WorkShop用户手册。 例子: procedure TForm1.mnuGotoHelpClick(Sender:TObject); begin Application.HelpFile:=my_apps_help.hlp; Application.HelpJump(hlpMyIdentifier); end; HintColor属性 对应对象:TApplication 声明:property HintColor:TColor; 功能:HintColor属性用来确定在应用程序中出现的工具的提示窗口的颜色值。 HintColor属性确定了应用程序所使用的工具提示窗口的背景颜色,这个颜色可以被设置成为任何的系统支持的颜色。一些通用的颜色是clBlack,clWhite,clYellow,clCaption及clWindow。HintColor是运行时有效的属性。可以通过各种组件的Hint属性来访问提示。 例子: procedure TForm1.FormCreate(Sender:TObject); begin Application.HintColor:=clAqua; Form1.Hint:=The HintColor demo program; Form1.ShowHint:=True; end; HintHidePause属性 对应对象:TApplication 声明:property HintHidePause:Integer; 功能:当用户使用鼠标指针在显示的工具提示上没有立即移开时,HintHidePause属性用来确定工具提示的时间长短。 在缺少的情况时,工具的提示及在它消失之前显示约2500毫秒。用户可以用这个属性修改显示的时间长度,时间单位是毫秒。这个属性是在运行时有效的。可以使用每个组件的Hint属性来访问工具提示。 例子: procedure TForm1.FormCreate(Sender:TObject(; begin /Set the HintHidePause to 5 seconds Application.HintHidePause:=5000; end; HintPause属性 对应对象:TApplication 声明:property HintPause:Integer; 功能:HintPause属性用来指定在一个工具提示显示之前的所显示的时间长短。 当鼠标在一个将被显示的工具提示之上停留一段时间后,工具提示才显示帮助。这个停留的时间可以由HintPause属性来确定,单位是以毫秒来计算。缺少蝗时间是800毫秒。一般可以使用每个组件的Hint属性来访问组件。 例子: procedure TForm1.FormCreate(Sender:TObject); begin /Set the HintHidePause to 5 seconds Application.HintHidePause:=5000; /Set the HintPause to 1 second Application.HintPause:=1000; end; HintShortPause属性 对应对象:TApplication 声明:property HintShortPause:Integer; 功能:HintShortPause属性用来确定在绘制之前工具提示的延迟时间的长短。 HintShortPause用于当用户移动鼠标经过了一系列的与工具提示相关联的组件时,禁止工具提示的快速绘制。它确定了工具提示在重新显示之前的等待的时间长短,如果工具提示在近期已经显示过并且鼠标指针再次移动到这个组件上时,HintShortPause将显示在工具再次显示之前的延迟的时间。这个属性在运行时是有效有,时间的单位是毫秒,在缺少时的值是50毫秒。工具提示可以通过组件的Hint属性访问。 例子: procedure TForm1.FormCreate(Sender:TObject); begin /Set the HintPause to 1 second Application.HintPause:=1000; /Set the HintShortPause to 1/10th of a second Application.HintShortPause:=100; end; Icon属性 对应对象:TApplication 声明:property Icon:TIcon; 功能:Icon属性确定一个代表应用程序的图标。 每一个应用程序的图标Icon属性出现在应用程序任务栏窗口的按钮上,人微言轻应用程序主窗体标题栏的图标,并用来作为在文件浏览器中应用程序的图标。虽然图标的Icon属性可以使用代码来设置,但一般从Delphi中的Project Options对话框中的Application的标签中设置。如果没有改变在选项中的图标,那么当用户在Shell中查看时,可以为自己的应用程序获得缺少的“火炬”图标。 例子: procedure TForm1.FormCreate(Sender:TObject); begin /Set the application icon Application.Icon.LoadFromFile(d:BorlandDelphi 4ImagesIconsEarth.ico); end; Initializ

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论