求 QQ四边圆角大小的 region,自己画老是画不出感觉。谢谢
解决方案 »
- DataGridView之DataGridViewTextBoxColumn列
- SplitContainer/TreeView/MDI
- .net中<% %>和<%# %>有什么区别
- 如何动态加载文件夹中的图片
- winform如何实现多表头?
- 新手提问:如何使dataSet不将重复数据导入comboBox
- 请问一下,VS 2005中的立即窗口怎么调出?
- 如何从文本文件中读取数字
- 想真正了解各个城市软件行业的薪水的朋友请进来
- System.Exception: Exception decrypting. Decryption failed. 该项不适于在指定状态下使用。
- 如何获取dataGridView里单元格的值,在线!
- reporting service 与水晶报表有何区别???
http://www.codeproject.com/cs/media/FuzzyDropShadows.asp
{
base.OnLoad(e);
this.Region = getFormRegion();
}
private Region getFormRegion()
{
int arcWidth = 20;
GraphicsPath path = new GraphicsPath();
path.AddArc(new Rectangle(0, 0, arcWidth, arcWidth), 180, 90);
path.AddLine(arcWidth / 2, 0, this.Width - arcWidth / 2, 0);
path.AddArc(new Rectangle(this.Width - 1 - arcWidth, 0, arcWidth, arcWidth), 270, 90);
path.AddLine(this.Width, arcWidth / 2, this.Width, this.Height - arcWidth / 2);
path.AddArc(new Rectangle(this.Width - 1 - arcWidth, this.Height - 1 - arcWidth, arcWidth, arcWidth), 0, 90);
path.AddLine(this.Width - arcWidth / 2, this.Height, arcWidth / 2, this.Height);
path.AddArc(new Rectangle(0, this.Height - 1 - arcWidth, arcWidth, arcWidth), 90, 90);
path.AddLine(0, this.Height - arcWidth / 2, 0, arcWidth / 2);
path.CloseFigure();
return new Region(path);
}
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
this.Region = getFormRegion();
}
private Region getFormRegion()
{
int arcWidth = 10;
GraphicsPath path = new GraphicsPath();
path.AddArc(new Rectangle(0, 0, arcWidth, arcWidth), 180, 90);
path.AddLine(arcWidth / 2, 0, this.Width - arcWidth / 2, 0);
path.AddArc(new Rectangle(this.Width - 1 - arcWidth, 0, arcWidth, arcWidth), 270, 90);
path.AddLine(this.Width, arcWidth / 2, this.Width, this.Height - arcWidth / 2);
path.AddArc(new Rectangle(this.Width - 1 - arcWidth, this.Height - 1 - arcWidth, arcWidth, arcWidth), 0, 90);
path.AddLine(this.Width - arcWidth / 2, this.Height, arcWidth / 2, this.Height);
path.AddArc(new Rectangle(0, this.Height - 1 - arcWidth, arcWidth, arcWidth), 90, 90);
path.AddLine(0, this.Height - arcWidth / 2, 0, arcWidth / 2);
path.CloseFigure();
return new Region(path);
}