开发者

Windows Form "Hole"

开发者 https://www.devze.com 2022-12-18 12:44 出处:网络
How would I go about creating a dynamic \"hole\" in a wi开发者_如何学Pythonndows form through which the user could see the actual desktop instead of the form? Right now I\'ve created a translucent for

How would I go about creating a dynamic "hole" in a wi开发者_如何学Pythonndows form through which the user could see the actual desktop instead of the form? Right now I've created a translucent form on top of the entire screen and I'm looking to see through that translucent form.


Use the form's Region property.

Rectangle rect = new Rectangle(Point.Empty, this.Size);
Region region = new Region(rect);

rect.Inflate(-1 * (this.Width / 3), -1 * (this.Height / 3));
region.Exclude(rect);

this.Region = region;

That should put a hole through your form.


As an alternative if you need rectangular form of "hole" you can set form's TransparencyKey property to a certain color and then create a Panel with the background of the same color. (That panel will be transparent on run.)

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号