怎样使用自定义的光标???

stanely 2001-11-30 09:03:36
看了这样一篇文章,

程序中使用自定义的鼠标

自订鼠标的部分, 在 OnLine Help 中的说明?没有提到一些细节
以下的例子请您参考看看:
一. 建立工程与一个资源档
1. File | New Project
2. File | Save Project, 将 unit1 与 project1 存起来
假定是 c:\temp 目录
3. Tools | Image Editor, 利用 Image Editor 新开一个
资源档(Fild | New | Resource File )
4. 在这个资源档中新建一个 CURSOR_1 的 CURSOR, 设定
好它的 Hot Spot(Image | Hot Spot)
5. 将资源档存起来, 存档时注意要和上述的 Project 存在
同一个目录,且不要与 project 的原资源档档名重覆,
在本例我们先假定为 MyCursor.res
二. 程序部分
6. 定义一个常数, 这个常数您必须设成大於零的任何整数
7. 以 LoadCursor() 函数将自订的鼠标资源 load 进来
以下为源代码
// unit.pas
unit Unit1;
interface
uses
SysUtils, WinTypes, WinProcs, Messages, Classes,
Graphics, Controls, Forms, Dialogs;

const
crMyCursor=1;(* 宣告一个常数 *)
type
TForm1=class(TForm)
procedure FormCreate(Sender: TObject);
private
{Private declarations}
public
{Public declarations}
end;
var
Form1: TForm1;
{$R mycursor.res} // 这行 $R 不可少, 否则自订的鼠游标就出不来了
implementation
{$R *.DFM}
procedure TForm1.FormCreate(Sender: TObject);
begin
//将鼠标资源 load 进来
Screen.Cursors[crMyCursor] :=LoadCursor(hInstance,
'CURSOR_1');
//指定 form1 的 cursor 为自订鼠标
Cursor :=crMyCursor;
// 指定 Button1 的 cursor 为自订鼠标
Button1.Cursor :=crMyCursor;
end;
end.

//////////
出现了以下两个问题:

1.照作了,鼠标不变.

2.imageeditor编辑鼠标的时候怎么只能是黑白的?

{delphi6}
...全文
196 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
stanely 2001-11-30
  • 打赏
  • 举报
回复
不过好像大小写没干系
stanely 2001-11-30
  • 打赏
  • 举报
回复
果然,谢了!
stanely 2001-11-30
  • 打赏
  • 举报
回复
to zwjchina(蒲石) 
不行呀,我设成了100,不行,-100.不行,而且帮助里面的都是负值和0呀.
liang_z 2001-11-30
  • 打赏
  • 举报
回复
你没有过光标的名字的话应该是'Cursor1',而不是'Cursor_1'!
还有,你直接试一下下面这句(先在Image Editor中将光标名字改为‘CCC’<大小写有关>):
Cursor := LoadCursor(hInstance,'CCC');

stanely 2001-11-30
  • 打赏
  • 举报
回复
我试试..
zwjchina 2001-11-30
  • 打赏
  • 举报
回复
1——20的鼠标常量是系统占用了的
建议你使用负数,如crMyCursor=-1

我只是大致看了一下你的程序!不知道是不是这个原因!

stanely 2001-11-30
  • 打赏
  • 举报
回复
着两个问题可能比较弱,但是小弟诚心请教...希望不吝赐教!
stanely 2001-11-30
  • 打赏
  • 举报
回复
?

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧