关于解决ListCtrl的头标题栏的鼠标状态问题的简单做法

ListCtrl中的最上面的标题栏那里的鼠标状态,当不需要拉动时应该更改为正常的状态。

用下面一句话可搞定:m_plist.GetHeaderCtrl()->EnableWindow(false);

 

还有一个函数SetClassLong()

直接调用SetClassLongm_hWnd,GCL_HCURSOR,(LONG)LoadCursor(HINSTANCE  ,MAKEINTRESOURCE(ID__))

该函数的第二个参数可以 index 可以改变光标状态,但没用过

函数功能:该函数替换额外的类存储空间中指定偏移量处的32位长整型值,或替换指定窗口所属类的WNDCLASSEX结构(应该是替换这个结构体中值,没有把结构体给换了吧)

函数原型:DWORD SetClassLongHWND hWndint nlndexLONGdwNewLong

hWnd窗口句柄及间接给出的窗口所属的类。

nlndex:指定将被替换的32位值。在额外类存储空间中设置32位值,应指定一个大于或等于0偏移量

取值:

GCL_CBCLSEXTRA:设置与类相关的尺寸的字节大小。设定该值不改变己分配的额外字节数。

GCL_CBWNDEXTRA:设置与类中的每一个窗口相关的尺寸的字节大小。设定该值不改变已分配额外字节数。查看如何进入该内存,参看SetWindowLOng

GCL_HBRBACKGROUND:替换与类有关的背景刷子的句柄。

GCL_HCURSOR:替换与类有关的光标的句柄。GCL_HICON:替换与类有关的图标的句柄。

GCL_HMODULE:替换注册类的模块的句柄。GCL_STYLE:替换窗口类的风格位。

GCL_MENUNAME:替换菜单名字符串的地址。该字符串标识与类有关的菜单资源。

GCL_WNDPROC:替换与窗口类有关的窗口过程的地址。

 

注:使用SetClassLong函数需要谨慎。例如,可以通过使用SetClassLong来改变类的背景颜色,但是这种改变不会马上生效,直到属于该类的窗体下次重绘,除非使用UpdateWindow()强迫窗体更新。


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值