VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 编程开发 > C#教程 > c#编程 >
  • c#制作出不规则按钮

制作者:剑锋冷月 单位:无忧统计网,www.51stat.net
 

using System.Drawing.Drawing2D;
private void button3_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
 { this.button3.Cursor = Cursors.Hand;
     Bitmap bmpBob =(Bitmap)this.button3.Image;   
   GraphicsPath graphicsPath = CalculateControlGraphicsPath(bmpBob);
   this.button3.Region = new Region(graphicsPath); 
 }
 private static GraphicsPath CalculateControlGraphicsPath(Bitmap bitmap)
 {
 
  GraphicsPath graphicsPath = new GraphicsPath();
 
  Color colorTransparent = bitmap.GetPixel(0, 0);
 
  int colOpaquePixel = 0;
 
  for(int row = 0; row < bitmap.Height; row ++)
  {
  
  colOpaquePixel = 0;
 
  for(int col = 0; col < bitmap.Width; col ++)
  {
  
   if(bitmap.GetPixel(col, row) != colorTransparent)
   {
   
   colOpaquePixel = col;
  
   int colNext = col;
  
   for(colNext=colOpaquePixel; colNext<bitmap.Width; colNext++)
    if(bitmap.GetPixel(colNext, row) == colorTransparent)
    break;
  
   graphicsPath.AddRectangle(new Rectangle(colOpaquePixel,
    row, colNext - colOpaquePixel, 1));
  
   col = colNext;
   }
  }
  }
 
  return graphicsPath;
 }

  http://www.cnblogs.com/zengping/archive/2006/08/30/490720.html



相关教程