如题,如何实现鼠标移到按钮上出现手形光标,移到其它处鼠标保持原样在函数OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message)中
添加了如下代码
::SetCursor(AfxGetApp()->LoadCursor(IDC_CURSOR_HAND));
return TRUE;现在可出现手形鼠标光标,但是想区分开来处理,即只有移到按钮上出现手形光标。
添加了如下代码
::SetCursor(AfxGetApp()->LoadCursor(IDC_CURSOR_HAND));
return TRUE;现在可出现手形鼠标光标,但是想区分开来处理,即只有移到按钮上出现手形光标。
解决方案 »
- 如何用C++操作网页?
- 关于模式对话框和无模式对话框的问题
- static list <void**> *fre;
- dll怎么取得宿主程序的exe的路径??
- 使用_beginthreadex创建线程失败
- 请教:定义了一个CTreeCtrl m_Tree; 语句m_tree.InsertItem("组1", NULL);是往该树形控件的末尾插入item,如果想始终Insert该Iterm在树形
- oracle sequence 用法
- 有关CFileDialog的DoModal的问题!
- 双击窗口的标题栏响应的是什么消息?
- 怎么用鼠标响应获得视频上的坐标并画线,还有怎么将鼠标响应限制在某个窗口(感激不尽)
- vc问题
- 我软件要判断用户买了软件多少天....那就必须得到用户的电脑时间来和第一次买软件的时候比较,
相应onmouseover事件,修改形状。
加入消息WM_SETCURSOR
BOOL CTestSETCURSORDlg::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message)
{
// TODO: Add your message handler code here and/or call default
switch(pWnd->GetDlgCtrlID())
{
case IDC_BUTTON1:
SetCursor(::LoadCursor(NULL, IDC_HAND));
break;
default :
SetCursor(::LoadCursor(NULL, IDC_ARROW));
}
return TRUE;
}
SetCursor(AfxGetApp()->LoadStandardCursor(IDC_ARROW));
在初始化里面
hcursor=LoadCursor(NULL,IDC_WAIT);
SetClassLong(GetDlgItem(IDC_BUTTON1)->m_hWnd,GCL_HCURSOR,(LONG)hcursor);
其中hcursor是HCURSOR hcursor成员手型你自己试吧,可能XP的特殊,我还没找到
呵呵