今天看到了“超级兔子”的桌面秀功能,觉得十分好。因此,自己就像实现这些功能,但是在这些功能中“鼠标穿透”功能最难实现,由于自己对这些功能需要很强的Windows编程经验,于是我查找了Windows窗体的样式。
/*
* Extended Window Styles
*/
#define WS_EX_DLGMODALFRAME 0x00000001L
#define WS_EX_NOPARENTNOTIFY 0x00000004L
#define WS_EX_TOPMOST 0x00000008L
#define WS_EX_ACCEPTFILES 0x00000010L
#define WS_EX_TRANSPARENT 0x00000020L
#if(WINVER >= 0x0400)
#define WS_EX_MDICHILD 0x00000040L
#define WS_EX_TOOLWINDOW 0x00000080L
#define WS_EX_WINDOWEDGE 0x00000100L
#define WS_EX_CLIENTEDGE 0x00000200L
#define WS_EX_CONTEXTHELP
/*
* Extended Window Styles
*/
#define WS_EX_DLGMODALFRAME 0x00000001L
#define WS_EX_NOPARENTNOTIFY 0x00000004L
#define WS_EX_TOPMOST 0x00000008L
#define WS_EX_ACCEPTFILES 0x00000010L
#define WS_EX_TRANSPARENT 0x00000020L
#if(WINVER >= 0x0400)
#define WS_EX_MDICHILD 0x00000040L
#define WS_EX_TOOLWINDOW 0x00000080L
#define WS_EX_WINDOWEDGE 0x00000100L
#define WS_EX_CLIENTEDGE 0x00000200L
#define WS_EX_CONTEXTHELP

本文介绍了如何在C#中实现窗体的鼠标穿透功能,通过设置Windows窗体的扩展样式WS_EX_TRANSPARENT,并结合USER32.dll中的API函数SetWindowLong和GetWindowLong,实现了当窗体开启鼠标穿透后,鼠标可以穿过窗体操作底层窗口。
最低0.47元/天 解锁文章
399

被折叠的 条评论
为什么被折叠?



