《MFC程序设计轻松入门》关于改变客户区光标为“I”型光标的一段程序:生成的程序上不显示光标。

MFC的单文档界面的应用程序,在classwizard里对CMainFrame类的WM_SETCURSOR消息添加响应函数OnSetCursor()。程序如下BOOLCM... MFC的单文档界面的应用程序,在classwizard里对CMainFrame类的WM_SETCURSOR消息添加响应函数OnSetCursor()。程序如下

BOOL CMainFrame::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message)
{
// TODO: Add your message handler code here and/or call default
HCURSOR m_hMycursor;

m_hMycursor= AfxGetApp()->LoadCursor(IDC_IBEAM);
if (nHitTest==HTCLIENT) {
SetCursor(m_hMycursor);

return TRUE;
}
return CFrameWnd::OnSetCursor(pWnd, nHitTest, message);
}
运行后用鼠标点击客户区,客户区没有光标出现。书上显示会有一个“I”型的光标出现。
我用VC++6.0,VS2008都是一个效果。没有光标出现。

是要添加特殊的头文件还是别的问题?解决不了啊。我还试了一下另一个鼠标编程的例子,程序运行,该出来的效果没有。

请大家给我指点一下。谢谢。
展开
 我来答
迷途中的香烟
2012-04-19 · 超过25用户采纳过TA的回答
知道答主
回答量:75
采纳率:0%
帮助的人:53万
展开全部
这个问题还是很简单的。LoadCursor 加载自定义的光标,所带的参数是工程内的资源;LoadStandardCursor 加载系统自带的光标。
所以解决方法有2个:
1、LoadCursor(IDC_IBEAM);改为LoadStandardCursor(IDC_IBEAM);
2、在工程的RC里建立并编辑光标资源,然后调用LoadCursor(资源ID);
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式