WinForm中窗体重画成圆角矩形
private Image img=null;//声明字段
------------------------------
public frmLogin()
{
img=new Bitmap(@"img/Login.jpg");-//构造函数中定义图片
oldp=new Point(0,0);
//
// Windows 窗体设计器支持所必需的
//
InitializeComponent();
//
// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
//
}
---------------------------------
//核心代码,在窗体的Paint事件中重新画窗体
GraphicsPath gp=new GraphicsPath();
//topleft
Point p1=new Point(0,10);
Point p2=new Point(2,4);
Point p3=new Point(4,2);
Point p4=new Point(10,0);
Point[] lpp={p1,p2,p3,p4};
gp.AddCurve(lpp);
p1.X=10;p1.Y=0;
p2.X=0;p2.Y=0;
p3.X=0;p3.Y=10;
Point[] lppp={p1,p2,p3};
gp.AddLines(lppp);
//topRight
p1.X=300;p1.Y=10;
p2.X=298;p2.Y=4;
p3.X=296;p3.Y=2;
p4.X=290;p4.Y=0;
Point[] rpp={p1,p2,p3,p4};
gp.AddCurve(rpp);
p1.X=290;p1.Y=0;
p2.X=300;p2.Y=0;
p3.X=300;p3.Y=10;
Point[] rppp={p1,p2,p3};
gp.AddLines(rppp);
//endleft
p1.X=0;p1.Y=190;
p2.X=2;p2.Y=196;
p3.X=4;p3.Y=198;
p4.X=10;p4.Y=200;
Point[] elpp={p1,p2,p3,p4};
//gp.ClearMarkers();
GraphicsPath egp=new GraphicsPath();
egp.AddCurve(elpp);
p1.X=10;p1.Y=200;
p2.X=0;p2.Y=200;
p3.X=0;p3.Y=190;
Point[] elppp={p1,p2,p3};
egp.AddLines(elppp);
//endRight
p1.X=300;p1.Y=190;
p2.X=298;p2.Y=196;
p3.X=296;p3.Y=198;
p4.X=290;p4.Y=200;
Point[] erpp={p1,p2,p3,p4};
egp.AddCurve(erpp);
p1.X=290;p1.Y=200;
p2.X=300;p2.Y=200;
p3.X=300;p3.Y=190;
Point[] erppp={p1,p2,p3};
egp.AddLines(erppp);
//重新画
Region rr=new Region(gp);
Region err=new Region(egp);
e.Graphics.ExcludeClip(rr);
e.Graphics.ExcludeClip(err);
e.Graphics.DrawImage(img,0,0,300,200);
e.Graphics.ResetClip();
--阿东研究
转载于:https://www.cnblogs.com/wei1279/archive/2006/04/05/367199.html
WinForm中窗体重画成圆角矩形相关推荐
- 怎样使用css让矩形出现圆角,CSS中设置元素的圆角矩形
圆角矩形介绍 在CSS中通过border-radius属性可以实现元素的圆角矩形. border-radius属性值一共有4个,左上.右上.左下.右下. border-radius属性值规则如下:第一 ...
- c# winform中窗体切换后释放及防止重复生成
问题1:窗体切换后如何关闭,并释放资? c# winform中,2个窗体,form1和form2,互相切换的时候执行 this.Hide(); Form2 form2 = new Form2();fo ...
- C# WInForm中 窗体的this.width和this.height的属性值不能大于显示器的最大分辨率
最近在做一个小项目的时候,发现在 1680x1050 分辨率显示器上写的代码,将窗体的宽度和高度 设置成了 1600×900,在高于1600×900的分辨率上缩放显示很正常, 而后转移到 分辨率低于 ...
- Android 中shape的使用(圆角矩形)
一.在res/drawable文件夹下创建一个xml文件: <?xml version="1.0" encoding="utf-8"?> <! ...
- Android 中shape的使用(圆角矩形)
一.在res/drawable文件夹下创建一个名为gradient_box的xml文件: 1 <?xml version="1.0" encoding="utf-8 ...
- C#Winform中窗体的美化
前言 机房合作项目正在最近如火如荼的进行着,一个好看的界面是一个项目的基础,所以该怎样让我们项目的界面更好的美化一下呢,组长把这个活交给了我,我也就义不容辞的接下来了,在美化的过程中发现这个世界真的好 ...
- WinForm开发,窗体显示和窗体传值相关知识总结
以前对WinForm窗体显示和窗体间传值了解不是很清楚 最近做了一些WinForm开发,把用到的相关知识整理如下 A.WinForm中窗体显示显示窗体可以有以下2种方法: Form.ShowDialo ...
- WinForm中Partial部分类的使用
文章目录 1 WinForm中Partial部分类的使用 1.1 WinForm中Partial部分类的简要介绍 1 WinForm中Partial部分类的使用 1.1 WinForm中Partial ...
- winform php 交互,WinForm开发,窗体显示和窗体传值
以前对WinForm窗体显示和窗体间传值了解不是很清楚 最近做了一些WinForm开发,把用到的相关知识整理如下 A.WinForm中窗体显示 显示窗体可以有以下2种方法: Form.ShowDial ...
- 如何使用Sketch绘制半个圆角矩形
想要制作MacOS中Finder切换目录展示模式的效果: 那么如何实现左右两端选中时只有半个圆角矩形被填充的效果呢?问题的关键是要制作出半个圆角矩形. Sketch中绘制半个圆角矩形的步骤如下: 首先 ...
最新文章
- 灰度直方图均衡化及其实现
- 服务信息块协议 SMB(Server Message Block protocol)
- 【面向对象设计模式】 接口型模式 (一)
- 9.1 基于内容的推荐系统-机器学习笔记-斯坦福吴恩达教授
- TCP如何能正常关闭连接?
- 怎么在数据库服务器解压文件,数据库服务器9怎么解压
- 第八章 CTE 递归 及 分组汇总 高级部分(多维数据集)
- jsp中用java写标签id_jsp中自定义标签用法实例分析
- 学习写第一份在CSDN上的博客;
- ASP操作XML文件的主要方法和实现
- 打印准考证服务器异常显示,2020准考证打印30个常见问题汇总及解决办法
- SpringBoot 整合 Editormd(完整版)
- python VTK画3D方框
- win8/8.1改win7原版系统全部教程之先把驱动精灵万能网卡版存到U盘(2)
- 360全景拼接 opencv_GitHub - hellojiawa/AndroidPanoDemo: 使用Opencv全景照片拼接
- mysql别名引号与引用问题
- 【马克思主义基本原理概论】
- STW43NM60ND-ASEMI原厂代理意法MOS管STW43NM60ND
- springboot宴会预定平台毕业设计-附源码231718
- SAP/PP-40策略下SO不消耗PIR问题