摘要:怎么裁剪隐藏擦除某个控件的其中一部分呢,网上很多教程都是基于一张透明图片去生成区域,然后在这个区域绘制控件,其实不用图片也可以实现,我在这里找到了答案。通过这个方法,我们可以实现很多效果,比如绘制一个不规则的控件,包括圆角矩形三角形圆形等。
C#怎么裁剪/隐藏/擦除某个控件的其中一部分呢,网上很多教程都是基于一张透明图片去生成区域,然后在这个区域绘制控件,其实不用图片也可以实现,我在这里找到了答案。实现代码如下:
GraphicsPath controlPath = new System.Drawing.Drawing2D.GraphicsPath(); // 绘制两个区域 controlPath.AddRectangle(new System.Drawing.Rectangle(10, 10, 50, 50)); controlPath.AddRectangle(new System.Drawing.Rectangle(50, 50, 100, 100)); // 反选区域 Region r = new Region(new Rectangle(Point.Empty, this.ClientSize)); r.Exclude(controlPath); // 设置button1绘图区域 button1.Region = r; // 如果不需要反选的话,把r换成controlPath也是可以的
下面是效果,实现了一个镂空的button,点击镂空的部分会穿透到下一层,而且两个镂空区域的交叉部分竟然是实心的,是不是感觉很神奇。
通过这个方法,我们可以实现很多效果,比如绘制一个不规则的控件,包括圆角矩形、三角形、圆形等。
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/110530.html
摘要:结合自己的经验,采用绘图,设计思路就是将所有元素都有独立的图层。用户可自定义图层,绘制自定义图层内容,支持对目标图层元素的移动放大缩小,置顶和置底显示等功能。同时这个组件支持导出图层元素数据,并将数据加载还原图形显示等功能。最近接了个小项目10K。用了2个下班时间写完,共花费了6-7个小时完成。如有同类需求的可以与本人联系,QQ:120772981 功能目标: 需要写一个仿PPT...
摘要:是一款地图服务器控件,它将动态地图功能添加到了工具包中并能与工具包一起使用或独立使用。更新至版本,增加了航空影像数据集等功能。新的地图服务器功能新版本增加了与大型卫星一起使用的航空影像数据集功能。当显示此图像时,黑色区域应视为透明。 GIS Map Server是一款地图服务器控件,它将动态地图功能添加到了GLG工具包中并能与工具包一起使用或独立使用。GLG地图服务器控件将动态地图功能...
阅读 1571·2021-11-22 09:34
阅读 968·2021-09-28 09:35
阅读 2725·2021-09-28 09:35
阅读 12108·2021-09-09 11:34
阅读 2189·2021-09-08 09:36
阅读 3457·2019-08-29 16:25
阅读 2632·2019-08-29 15:23
阅读 1917·2019-08-28 17:55