VC 如何改变光标的大小

jy01224718 2009-06-06 04:28:09
我已经自制好了 一个CUR光标,像素也比普通的光标大,但是在程序中显示出来的时候,却和普通光标大小一样。。被压缩得好难看,有什么办法可以把光标弄得大一些,,,说得详细点,最好写出来····谢谢,我新手
...全文
469 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
youhao1999 2009-06-06
  • 打赏
  • 举报
回复
没办法
  • 打赏
  • 举报
回复
MFC默认的光标、图标是由MFC底层代码完成的。当然,我们是不能修改MFC的底层代码的。创建之前而应该:方法1:在PreCreateWindow函数,定义一个自己的窗口类 HINSTANCE AfxGetInstanceHandle( );这个函数返回当前应用程序实例的句柄。 DefWindowProc默认的窗口函数。注意,这里用的是全局API函数,前面要有:: 菜单不是这个时候加上去的,而是在应用程序类的初始化函数加上去的,所以暂时先设置为NULL然后注册这个窗口类改变cs的属性类名为刚刚定义的这个类。在框架窗口中只能修改图标等没被View覆盖的。光标修改:应该在View类中的PreCreateWindow修改,将cs属性类名为刚刚定义的这个类。这个方法麻烦!方法2:使用下面这个函数:LPCTSTR AFXAPI AfxRegisterWndClass( UINT nClassStyle, HCURSOR hCursor = 0, HBRUSH hbrBackground = 0, HICON hIcon = 0 );nClassStyle 为样式 参看 WndClass的style成员。msdn在框架类的PreCreateWindow函数中 用它修改图标。在视图类的PreCreateWindow函数中,用它修改背景、光标、画刷。创建之后方法1:SetClassLong函数The SetClassLong function replaces the specified 32-bit (long) value at the specified offset into the extra class memory or the WNDCLASSEX structure for the class to which the specified window belongs.DWORD SetClassLong( HWND hWnd, // handle of window int nIndex, // index of value to change LONG dwNewLong // new value);用法查看msdn 注意类型转换。
hhwei1985 2009-06-06
  • 打赏
  • 举报
回复
把光标制作小一点

16,551

社区成员

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

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

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