资源描述:
《c#下重写BUTTON控件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、c#下重写BUTTON控件XPButton.cs代码usingSystem;usingSystem.Windows;usingSystem.Drawing;usingSystem.Drawing.Drawing2D;usingSystem.Windows.Forms;namespaceXPCtrl{//////XPButton的摘要说明。///publicclassXPButton:System.Windows.Forms.Button{privateboolmou
2、seover=false;publicXPButton(){////TODO:在此处添加构造函数逻辑//this.Cursor=System.Windows.Forms.Cursors.Hand;}protectedoverridevoidOnPaint(System.Windows.Forms.PaintEventArgse){//base.OnPaint(e);//System.Drawing.Graphicspp=this.CreateGraphics();//e.Graphics.Clear(C
3、olor.Transparent);//e.Graphics.DrawEllipse(newSystem.Drawing.Pen(System.Drawing.Color.WhiteSmoke,5),0,0,this.Width,this.Height);//System.Drawing.SolidBrushdd=newSolidBrush(System.Drawing.Color.WhiteSmoke);//e.Graphics.FillEllipse(dd,0,0,this.Width,this.H
4、eight);//(this.BackColor.ToString())Colorc5=Color.FromArgb(255,255,255);Colorc2=Color.FromArgb(192,192,192);if(mouseover){c5=Color.FromArgb(245,245,245);//c2=Color.FromArgb(192,192,192);c2=Color.FromArgb(180,175,190);}Brushb=newSystem.Drawing.Drawing2D.L
5、inearGradientBrush(ClientRectangle,c5,c2,LinearGradientMode.Vertical);//System.Drawing.Region=newRegion(intoffsetwidth=this.Width/50;Point[]points=newPoint[8];points[0].X=offsetwidth;points[0].Y=0;points[1].X=this.Width-offsetwidth;points[1].Y=0;points[2
6、].X=this.Width;points[2].Y=offsetwidth;points[3].X=this.Width;points[3].Y=this.Height-offsetwidth;points[4].X=this.Width-offsetwidth;points[4].Y=this.Height;points[5].X=offsetwidth;points[5].Y=this.Height;points[6].X=0;points[6].Y=this.Height-offsetwidth
7、;points[7].X=0;points[7].Y=offsetwidth;//e.Graphics.FillRectangle(b,ClientRectangle);e.Graphics.FillPolygon(b,points,FillMode.Winding);if(this.Focused){intoffsetwidth1=(this.Width-5)/50+2;Point[]points1=newPoint[8];points1[0].X=offsetwidth1;points1[0].Y=
8、2;points1[1].X=this.Width-offsetwidth1;points1[1].Y=2;points1[2].X=this.Width-1;points1[2].Y=offsetwidth1;points1[3].X=this.Width-1;points1[3].Y=this.Height-offsetwidth1;points1[4].X=this.Width-offsetwidth1;points1[4].Y=th