我正在尝试在 win8 和 winforms 中制作一个鼠标透明表单,其中包含可单击的控件。
我可以使用此代码使表单鼠标透明
int initialStyle = GetWindowLong(this.Handle, -20);
SetWindowLong(this.Handle, -20, initialStyle | 0x80000 | 0x20);
(在win8上WndProc方法不起作用)
但是当我使表单鼠标透明时,该表单中包含的控件也是鼠标透明的
我能做些什么?
您可以创建一个表单并设置两者BackColor
and TransparencyKey
属性到Color.Magenta
.
截屏:
单击穿过窗口并到达其后面的内容,但是当您单击按钮 1 时,按钮将被单击。
Note:该技巧适用于某些颜色,例如,如果您使用 Color.Red,它将是透明的,但可以处理点击,但使用 Magenta,表单也将是鼠标透明的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)