教你一招:构造圆角窗体

chenszhs 2004-11-28 07:41:46
增加命名空间:using System.Drawing.Drawing2D;
添加方法如下:当然各角的点可根据需要确定.
private void Type(Control sender,int p_1,double p_2)
{
GraphicsPath oPath = new GraphicsPath();
oPath.AddClosedCurve(new Point[] {new Point(0,sender.Height / p_1),new Point(sender.Width / p_1,0),new Point(sender.Width - sender.Width / p_1,0),new Point(sender.Width,sender.Height / p_1),new Point(sender.Width,sender.Height - sender.Height / p_1),new Point(sender.Width - sender.Width / p_1,sender.Height),new Point(sender.Width / p_1,sender.Height),new Point(0,sender.Height - sender.Height / p_1)},(float)p_2);
sender.Region = new Region(oPath);
}


在窗体的paint和resize事件中增加:Type(this,20,0.1);
参数20和0.1也可以根据自己的需要调整到最佳效果.
...全文
1642 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
nkcrg 2004-11-28
  • 打赏
  • 举报
回复
谢谢,以前还用透明来隐藏多余部分
哎,sender.region

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧