Office中国论坛/Access中国论坛

标题: 真正有效并且通用设置鼠标指针为手形及其它特定形状的方法 [打印本页]

作者: 红尘如烟    时间: 2010-8-15 17:50
标题: 真正有效并且通用设置鼠标指针为手形及其它特定形状的方法
本帖最后由 红尘如烟 于 2010-9-19 21:23 编辑

当光标移到某个控件时将光标设置为手形是一个比较常用的功能,简单点的办法就是将控件的“超链接地址”属性设为一个空格,但这样做不好的地方在于光标移到控件上去的时候会显示一个空的控件提示,并且会造成新打开的弹出窗体不能获得焦点。所以只能用API来实现(注:2007版开始的按钮已经可以通过“悬停指针”属性设置了),以下是网上流传的方法:
  1. '在模块中声明API函数
  2. Public Declare Function SetCursor Lib "user32" (ByVal hCursor As Long) As Long  

  3. '光标移到按钮上时变成手形
  4. Private Sub Command0_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
  5.     SetCursor 65567
  6. End Sub
复制代码

但实际上这样并不好用,因为这里的hCursor并不是定值,而是会根据系统变化的,甚至更换了Windows主题后就可能变化,以下的代码才是固定的将光标设为手形,在任何Windows系统通用。

  1. '在模块中声明API函数
  2. Public Declare Function SetCursor Lib "user32" (ByVal hCursor As Long) As Long   
  3. Public Declare Function LoadCursorByNum Lib "user32" Alias "LoadCursorA" (ByVal hInstance As Long, ByVal lpCursorName As Long) As Long

  4. '光标移到按钮上时变成手形
  5. Private Sub Command0_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
  6.     SetCursor LoadCursorByNum(0, 32649)
  7. End Sub
复制代码

另外为了减少代码,当不需要在鼠标移动事件中进行其它处理时,我们可以直接将按钮的“鼠标移动”属性设为:=SetCursor(LoadCursorByNum(0, 32649))

该方法还可以设置其它指针形状,把示例改了一下,一并发上来

[attach]43525[/attach]




作者: ZHENGLIAN    时间: 2010-8-15 18:10

好东西就要支持才是!!!
作者: ZHENGLIAN    时间: 2010-8-15 18:11
是不是移到控件上就是手形光标吗?????
作者: xuwenning    时间: 2010-8-15 18:50
收藏了
作者: ui    时间: 2010-8-15 19:44
谢谢分享,好经验
作者: LJB    时间: 2010-8-15 21:49
将光标设置为手形是一个比较常用的功能,以下是网上流传的方法: 但实际上这样并不好用,因为这里的hCursor ...
红尘如烟 发表于 2010-8-15 17:50

对于版主;论坛元老等资深的人,你的这段代码或模块他们一看就知道该如何使用,但对于我们这种菜鸟级爱好者来讲实在不好下手,是否能大致说说功能实现的过程或步骤?



作者: t小宝    时间: 2010-8-15 22:32
很好,收藏了
作者: 红尘如烟    时间: 2010-8-15 23:29
我以为这个已经是很简单的了,没想到还是有人看不懂,只好把帖子重新改过。
作者: 82077802    时间: 2010-8-16 06:04
支持
作者: asklove    时间: 2010-8-16 09:37
下了,谢了
作者: 石三少    时间: 2010-8-16 16:40
学习了
作者: duomu    时间: 2010-8-16 17:48
下了,谢了

作者: aslxt    时间: 2010-8-16 17:59
好好学习天天向上
作者: zww3008    时间: 2010-8-16 20:41
谢谢
作者: ljp518    时间: 2010-9-17 15:25
在属性超级连接里大哥空格,也能成为小手
作者: sxb2007    时间: 2010-9-17 16:57
下了,谢了
作者: apsfxc1    时间: 2010-9-19 11:05
感谢分享
作者: c101    时间: 2010-9-21 20:56
谢谢分享
作者: xryacc2    时间: 2010-9-23 17:20
谢谢分享,看看
作者: xryacc2    时间: 2010-9-23 17:50
请问要使鼠标为问号时,Const 什么 = 多少&
作者: jackysu78    时间: 2010-9-23 20:00
永远支持你!
作者: xryacc2    时间: 2010-9-23 20:08
谢谢楼主精彩分享,但请问要使鼠标为问号时,Const 什么 = 多少&
作者: fcghw    时间: 2010-10-3 15:19
下了,谢了,谢了
作者: fcghw    时间: 2010-10-3 15:20
回复了还看不见呢?
作者: anny63    时间: 2010-10-6 13:36
这个很实用,谢谢
作者: lzongb    时间: 2010-10-6 17:03
学习,不过看了下office2010的,也没发现哪里可以设置“悬停指针”。
作者: dhlhmgc    时间: 2011-5-13 16:05
好东东,正苦苦寻找,收藏、学习中。。。。
作者: 鱼儿游游    时间: 2011-5-14 11:14
很好,收藏了

作者: caep4083    时间: 2011-5-15 21:31
学习
作者: wzh    时间: 2011-5-16 20:42
谢谢分享
作者: lkkl66    时间: 2011-5-16 23:44
收藏了
作者: goto2008    时间: 2011-5-24 11:05

作者: pq318    时间: 2011-5-24 11:51
谢谢了版主,软件更专业一点了,呵呵!
作者: sxgaobo    时间: 2011-5-24 16:51
学习学习,早想要这了啊!
作者: mr.chen    时间: 2011-5-27 10:51
谢谢分享,好经验
作者: zhao__feng    时间: 2011-5-28 22:15
支持

作者: sencewmy    时间: 2011-8-4 15:07
菜鸟学习中~
作者: kdjifir34562    时间: 2011-8-11 13:35
thanks
作者: Y9X    时间: 2011-8-13 20:42
下载参考,多谢
作者: CIBOO2000    时间: 2011-8-13 22:16
sisi
作者: pwj2009    时间: 2011-8-14 08:40
下了,谢谢!!
作者: jinzhanxi    时间: 2011-8-15 13:18
谢谢分享
作者: licongli    时间: 2011-8-16 10:16
Thank you for it.
作者: dashllh    时间: 2011-12-5 16:37
看看

作者: 石橡    时间: 2012-1-1 17:08
学习
作者: daxin1    时间: 2012-1-1 17:41
我能看懂哈哈
作者: daxin1    时间: 2012-1-1 17:41
我能看懂哈哈
作者: h150085001    时间: 2012-1-5 11:21
学习啦
作者: l3396949    时间: 2012-4-25 17:53
参考学习 很久很久才熟练~
作者: accesswj    时间: 2012-4-25 18:49
okkokokko
作者: zzf9008    时间: 2012-4-28 08:14
学习

作者: sl-txm    时间: 2012-8-9 21:21
学习
作者: 云游子    时间: 2012-8-29 22:35
这个收了
作者: 云游子    时间: 2012-8-29 22:40
可惜没有向左和向右,向下也没有
作者: 老鬼    时间: 2012-9-1 08:56
下来学习
作者: chenyingfengsx    时间: 2012-9-1 09:23
xialaikan
作者: wufeng980114    时间: 2012-9-1 12:24
支持楼主
作者: xlyw    时间: 2012-12-29 13:43
学习学习
作者: alonet    时间: 2013-3-5 22:22
看看
作者: ycxchen    时间: 2013-3-6 09:16
下载学习!
作者: smileyoufu    时间: 2013-4-13 18:45
学习大师作品
作者: 5574916    时间: 2013-4-15 15:21
谢谢分享,下来学习学习!
作者: ljp518    时间: 2013-4-16 14:32
{:soso_e163:}
作者: 李力军2    时间: 2013-4-18 23:41
好好好。多谢谢
作者: efcndi    时间: 2013-5-27 16:35
look            
作者: zxclen    时间: 2013-6-7 14:29
SEEEEEEEEEEEEEEEEEE
作者: ljp518    时间: 2013-6-7 15:16
{:soso_e163:}
作者: 盗梦    时间: 2013-9-12 17:53
看看离开控件鼠标形状有没有回复
作者: cclxf    时间: 2013-11-13 09:46
看看了....
作者: leonshi    时间: 2013-11-29 10:46
学习
作者: xdsjs    时间: 2013-12-17 10:40
不错,学习了
作者: 玉树TMD临风    时间: 2013-12-23 19:51
我的win8 64位下使用此办法不行
作者: 李力军2    时间: 2014-3-9 21:32
收下了,谢谢
作者: herry2003aa    时间: 2014-10-31 01:33
看样子是好东西
作者: 茼蒿    时间: 2014-11-27 10:12
全部收藏
作者: 390012370    时间: 2024-1-26 11:04
好东西




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3