在使用DELPHI进行编程时,有一个很重要的对象──TSCREEN,它是用来管理和操纵运行时期屏幕的不可视构件。它的CURSOR属性是用来指定各个不同的构件光标形状,声名为:
PROPERTY CURSORS[INDEX:INTEGER]:HCURSOR;
这个只读的特性返回应用程序支持的光标组成的一个HCURSOR类型的数组,它存储了屏幕上所有的鼠标光标的身份代码(HCURSOR就是光标的HANDLE句柄),数组下标从0开始,在DELPHI预定义了一些代表不同光标的常量,它的值是从0到-17,您可以直接指定程序使用的光标。如:
FORM1.CURSOR:=-3表示FORM1采用的光标是CRCROSS(十字)。
大家可能都会发现构件的CURSOR的属性最多提供十八种常用的CURSOR值,这在很多的情况下是不够的,如:当光标进入一个PANEL面板时光标的形状为一只手,那么PANEL的CURSOR就不能满足这种要求,这时就需要我们自定义一个手的光标并将其赋给PANEL的CURSOR属性。如何实现则可以按以下步骤进行:
使用资源文件编辑器(IMAGE EDITOR或者RESOURCE WORKSHOP)编写资源文件。
定义一个光标常量,注意这个常量不能与DELPHI中提供的光标常量相冲突。在FORMCREATE事件中使用WINDOWSAPI当中的LOADCURSOR函数来载入自定义的CURSOR。
在程序中将自定义的CURSOR分配给PANEL的CURSOR属性。
下面说明如何将自定义的一只手的鼠标光标赋给PANEL1的CURSOR属性。首先使用IMAGEEDITOR建立一个HAND.RES的文件。之后按如下书写程序代码:
implementation
{$R*.DFM}
const
Crhand=2;
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/