Go homepage(回首页)
Upload pictures (上传图片)
Write articles (发文字帖)

The author:(作者)aaa
published in(发表于) 2014/7/19 0:13:48
Delphi项目的框架类-TApplication类实例-详解

Delphi项目的框架类:TApplication类实例|详解|技巧

TApplication 类

任何基于窗体的Delphi 7 程序都包含一个全局变量Application,它的类型是TApplication。TApplication 封装了一些属性和方法,使应用程序能够正确地在Windows 环境下运行。这些方法中,有的用于建立窗口类定义,有的用于创建应用程序的主窗口、激活应用程序、处理消息、添加上下文敏感的帮助及处理VCL 的异常。

注意:只有基于窗体的Delphi 应用程序才有全局Application 对象,而控制台程序和服务程序没有Application 对象。

由于TApplication 并不在Object Inspector 中出现,因此不能在设计时修改它的属性,但可以用“Project”→“Options”菜单命令,切换到“Application”标签页,设置一些相关TApplication 的属性。在大多数情况下,只能在运行时设置Application 的属性、方法和事件。

1.TApplication 的属性

TApplication 具有几个属性,可以在运行时访问它们。下面将介绍这些属性以及怎样通过它们改变Application 的默认行为。

(1)ExeName 属性

ExeName 属性能够返回应用程序的全路径和文件名。这个属性在运行时是只读的,例如下面的代码把ExeName 属性的值显示在主窗体的标题栏上:

Application.MainForm.Caption:=Application.ExeName;

使用ExtractFileName()函数可以从ExeName 属性中得到文件名:

ShowMessage(ExtractFileName(Application.ExeName));

使用ExtractFilePath()函数可以从ExeName 属性中得到全路径:

ShowMessage(ExtractFilePath(Application.ExeName));

使用ExtractFileExt()函数可以从ExeName 属性中得到文件扩展名:

ShowMessage(ExtractFileExt(Application.ExeName));

(2)Handle 属性

Handle 属性是一个HWND(一个用于Win32 API 的窗口句柄)。一般情况下,不需要访问Handle属性,除非要修改Application 的默认行为,而Delphi 又没有提供相应的方法。此外,调用某些Win32 API 时可能也需要用到Handle 属性,因为那些API 需要传递应用程序的窗口句柄。

(3)Icon 属性

Icon 属性用于设置当应用程序最小化时代表应用程序的图标。可以通过修改Icon 属性来改变应用程序的图标。通常选择“Project”→“Option”菜单项,在弹出窗口的“Application”标签页进行修改。

(4)Title 属性

在Windows 系统的任务栏上,显示在图标右边的文字是通过Title 属性设置的。如果应用程序在Windows NT 下运行,则文字显示在图标下面。下面的代码演示了如何修改Title 属性:

Application.Title:=’一个新的标题’;

(5)其他属性

Active 是一个只读的属性,它的值表明应用程序是否激活和具有输入焦点。

ComponentCount 属性表明应用程序所包含的组件数,如果Application.ShowHint 属性设为True,那么这些组件主要是指窗体和THintWindow 实例(即窗口)。对于那些没有拥有者(Owner)的组件来说,ComponentIndex 属性总是-l。这个属性主要用于窗体和窗体中的组件。

Components 属性是一个数组,它的元素就是那些属于Application 的组件。Components 数组的元素个数就是TApplication.ComponentCount 属性的值。

HelpFile 属性用于指定帮助文件的文件名。需要向TApplication 的HelpContext 方法以及其他类似

的方法传递帮助文件的文件名。

TApplication.Owner 属性总是nil,因为TApplication 不可能被另外组件拥有。ShowHint 属性用于设置是否允许显示提示条。Application.ShowHint 属性覆盖其他组件的ShowHint 值。如果Application.ShowHint 属性设为False,则所有组件的提示条都不会显示。如果应用程序的主窗体被关闭,或者调用了TApplication.Terminate(),则Terminated 属性为True。


If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)





QQ:154298438
QQ:417480759