标签: c# winforms windows-8 windows-8.1 setwindowlong
我试图在win8和winforms中制作鼠标透明表单,其中包含可点击的控件。
我可以使用此代码
int initialStyle = GetWindowLong(this.Handle, -20); SetWindowLong(this.Handle, -20, initialStyle | 0x80000 | 0x20);
(在Win8上,WndProc方法不起作用)
但是当我将表单鼠标设为透明时,此表单中包含的控件也是鼠标透明的
我该怎么办?
答案 0 :(得分:3)
您可以创建表单并将BackColor和TransparencyKey属性设置为Color.Magenta。
BackColor
TransparencyKey
Color.Magenta
<强>截图:强>
点击浏览窗口并到达后面的内容,但是点击按钮1,将会点击按钮。
注意:强> 这个技巧适用于某些颜色,例如,如果你使用Color.Red,它将是透明的,但处理点击,但使用Magenta表格也将是鼠标透明。