win32程序中如何将CBitmap用作鼠标光标?

gtsfreer 2009-07-30 04:59:22
目前在写一个Win32的程序,需要根据unsign char* 类型的一个流来转换光标的样式,我的想法是先用CBitmap接收流,之后再插入到资源列表中,然后再用SetCursor(LoadCursor())去调用,但不知道可行不可行?诸位有什么好办法么?如果这样是可以的,那如何插入到资源列表中呢?谢谢了
...全文
174 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
matrixcl 2009-07-31
  • 打赏
  • 举报
回复
如果你想把bmp载入当光标用,需要手动指定热点(一般是左上角)。热点是光标文件和位图文件的唯一区别
gtsfreer 2009-07-31
  • 打赏
  • 举报
回复
谢谢各位的关注,createCursor应该可以解决,但目前正纠结于流的格式,处理中~下午下班时候结贴
Ghost90 2009-07-30
  • 打赏
  • 举报
回复
比较麻烦将HBIMP转成HCURSOR 再用重载WM_SETCURSOR消息
BOOL CYourWnd::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message)
{

::SetCursor( m_hNormalCur );
return CParentWnd::OnSetCursor(pWnd, nHitTest, message);
}
liujin1234 2009-07-30
  • 打赏
  • 举报
回复
学些~~~
zyq5945 2009-07-30
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 zzz3265 的回复:]
接收后保存到内存, 需要知道流的格式

然后用 CreateCursor 把数据创建成 Cursor, 不要用 LoadCursor
[/Quote]
mark
Yofoo 2009-07-30
  • 打赏
  • 举报
回复
接收后保存到内存, 需要知道流的格式

然后用 CreateCursor 把数据创建成 Cursor, 不要用 LoadCursor
na_he 2009-07-30
  • 打赏
  • 举报
回复
补充一下,直接写到资源中因为你是动态的资源,看似比较麻烦。
na_he 2009-07-30
  • 打赏
  • 举报
回复
有两种方法可以完成:
1.LoadCursorFromFile(),但是必须把你接受的文件保存为.cur的格式即可。详细参考MSDN.

2.HCURSOR CreateCursor(
HINSTANCE hInst, // handle to application instance
int xHotSpot, // x coordinate of hot spot
int yHotSpot, // y coordinate of hot spot
int nWidth, // cursor width
int nHeight, // cursor height
CONST VOID *pvANDPlane, // AND mask array
CONST VOID *pvXORPlane // XOR mask array
);
gtsfreer 2009-07-30
  • 打赏
  • 举报
回复
那要怎么写才可以插入到资源中去哈?这个我不太会
eagerle01 2009-07-30
  • 打赏
  • 举报
回复
我认为SetCursor(LoadCursor())可行
gtsfreer 2009-07-30
  • 打赏
  • 举报
回复
没人甩?自己UP~

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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