我爱Aspx >> VC.Net >> WIN32用户界面设计基础之Cursor篇| HWND hbutton;HCURSOR hnewCur;hnewCur=LoadCursorFromFile("C:\\WINNT\\Cursors\\AnimCur.ANI");hbutton=(HWND)GetDlgItem(IDC_BUTTON);//IDC_BUTTON为要改变鼠标的控件IDSetClassLong(hbutton,GCL_HCURSOR,(long)hnewCur); |
3) RegisterClass()或RegisterClassEx()函数
这是最麻烦的方法,但是可以作用于属于同一个窗口类的所有窗口。在RegisterClass()或RegisterClassEx()之前,填写WNDCLASS时,将一个自定义的Cursor句柄赋值给hCursor,例如
WNDCLASSEX wcx;
| wcx.hCursor=LoadCursor(hInst,MAKEINTRESOURCE(NEWCUR)); |
| RECT rt1;//存放屏幕剪切矩形RECT rt2;//存放程序窗口剪切矩形GetClipCursor(&rt1);//获得当前的鼠标剪切矩形填写入rt1,如果鼠标没有被别的程序剪切,那么整个矩形就是屏幕矩形GetWindowRect(hwnd,&rt2);//获得程序窗口hwnd的矩形至rt2ClipCursor(&rt2);//剪切鼠标之rt2程序执行完成后应当:ClipCursor(&rt1);//将鼠标的剪切矩形还原为rt1(屏幕) |
2) 跟踪鼠标位置
GetCursorPos()用来获得当前鼠标位置,SetCursorPos()设置鼠标位置,例如:
| POINT pt;//存放鼠标位置的结构 GetCursorPos(&pt1);//获得当前鼠标位置SetCursorPos(pt.x+100,pt.y+100);//根据原位置计算得到新位置 |
完
【我对这篇文章有话说?】
程序员手记:简析Java RMI 与 .N..[05-21]
智力游戏九连环的算法[05-21]
一个IE浏览器Explorer Bar的例子[05-21]
如何用C++编程获得某台机器的IP地..[05-21]
.NET框架以及在C++中的初步应用[05-21]
汉诺塔移动步数的计算[05-21]
关于Profile的系列文章(二)[05-21]
学习ATL的一个习作 : )[05-21]
VC应用程序中初始化界面的一种实..[05-21]
初步了解 InstallShield for Vis..[05-21]