如何改变鼠标样式

plator 2008-08-18 04:01:43
大家好!

想问一下大家:我做了一个树状列表,现在想做一个拖动的效果,现在几乎都能够完成。但是当我拖动树状列表中某个项目时,我想让鼠标的样式变成为鼠标下面带一个+号的形式(就像在资源管理器中拖放文件一样),不知道怎样设置。听说是可以利用MFC的函数,设定默认的参数。

我尝试在树状视图(我是在单文档里面划分了两个试图)的OnBegindrag()里面添加了一句话:

SetCursor(AfxGetApp()->LoadCursor(IDC_SIZEALL));

但是都没有反应。不知道为什么。

听说可以使用COleDropSource::GiveFeedback,但是不知道怎样设置里面的参数呢?

想请教一下各位,谢谢!
...全文
261 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
vc_xiaocainiao 2008-08-18
  • 打赏
  • 举报
回复
::SetCursor(LoadCursor(NULL,IDC_WAIT));//IDC_WAIT可以更换为你想要的
Sandrer 2008-08-18
  • 打赏
  • 举报
回复
在类中增加一个变量成员,用来判断是否正在拖拽
在OnBeginDrag的映射函数里设置该变量为TRUE
接着在OnSetCursor映射函数里根据变量值设置鼠标指针
(记得设置后要返回TRUE,否则会被系统处理为默认鼠标样式)
在OnEndDrag映射函数里把变量设置为FALSE
plator 2008-08-18
  • 打赏
  • 举报
回复
不是十分明白,那这个事件怎样知道是正在拖放呢?

初始化的时候它同样需要调用这个事件的,而且我直接在事件里面添加上面的代码同样是没有反应。
jerry4711 2008-08-18
  • 打赏
  • 举报
回复
添加一个响应WM_SETCURSOR的事件,然后在该事件中指定鼠标在树状列表时的样式

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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