C# 我可以创建一个窗口,其客户端区域是透明的(使用透明键)并可以点击通过吗?
使用C#我创建了一个窗口,它的边框是正常的,但是客户端区域是透明的(使用透明键)。在XP上,我可以点击它(访问透明区域下方的项目);但是,这在W7上不起作用。有没有一种方法可以让W7(和XP)工作 更新: 感谢大家的快速反应!看来我的问题的关键是不幸的事实,我碰巧用黄色作为我的透明键。我想让它在VisualStudio中脱颖而出,这样我就会记得它是透明的;而颜色的选择正是阻止点击的原因。我一换成灰色的背景色,效果就很好C# 我可以创建一个窗口,其客户端区域是透明的(使用透明键)并可以点击通过吗?,c#,transparency,C#,Transparency,使用C#我创建了一个窗口,它的边框是正常的,但是客户端区域是透明的(使用透明键)。在XP上,我可以点击它(访问透明区域下方的项目);但是,这在W7上不起作用。有没有一种方法可以让W7(和XP)工作 更新: 感谢大家的快速反应!看来我的问题的关键是不幸的事实,我碰巧用黄色作为我的透明键。我想让它在VisualStudio中脱颖而出,这样我就会记得它是透明的;而颜色的选择正是阻止点击的原因。我一换成灰色的背景色,效果就很好 this.TransparencyKey = this.BackColor;
this.TransparencyKey = this.BackColor;
这在Windows7中对我来说很好
根据,解决方法是将透明键设置为灰色
this.BackColor = Color.Gray;
this.button1.BackColor = Color.Blue;
this.TransparencyKey = Color.Gray;
我没那么做。我为透明度关键点设置了一种颜色,然后将背景色指定给相同的颜色(基本相同,但不同)。这允许你“点击通过”?窗口也被设置为TopMost=true,因为在我开始打印后,记事本变为活动状态,而不是Form1。我想知道你的背景色是否是灰色(R=G=B);因为我觉得“灰色”很重要。如果我将backcolor设置为transparencykey,但不使用灰色,那么单击through不起作用。是的,我刚刚发现你是对的。黄色似乎对我来说也不可点击。试试看?很有趣。。。出于某种原因,我选择黄色作为透明度关键点的颜色。当我将其更改为灰色时,它现在确实可以点击。这对任何人来说都有意义吗?阿努拉格,我想把你的回答作为答案,但你必须把它作为一个真实的答案贴出来,我才能这样做。