六、使用GDI+画矩形、多边形

用到的函数DrawRectangle、DrawPolygon

DrawRectangle(Pen,Rectangle)

DrawRectangle(Pen,Int32,Int32,Int32,Int32)

DrawRectangle(Pen,Single,Single,Single,Single)

DrawPolygon(Pen,Point[])

DrawPolygon(pen,PointF[])

先画一个矩形

private void Form1_Paint(object sender, PaintEventArgs e)
{    
    //创建画板从Paint事件中的直接引用Graphics对象
    Graphics graphics = e.Graphics;

    graphics.Clear(Color.Black);

    //定义画笔
    Pen pen = new Pen(Color.White, 3.0f);
    Pen thickPen = new Pen(Color.White,2.0f);
    Pen thick = new Pen(Color.Red, 2.0f);

    //矩形区域
    Rectangle rect = new Rectangle(50,50, 300, 100);

    graphics.DrawRectangle(pen, rect);

}

效果:

如果Rectangle的width=height绘制出来的就是正方形

同时绘制多个矩形

private void Form1_Paint(object sender, PaintEventArgs e)
{    
    //创建画板从Paint事件中的直接引用Graphics对象
    Graphics graphics = e.Graphics;

    graphics.Clear(Color.Black);

    //定义画笔
    Pen pen = new Pen(Color.White, 3.0f);
    Pen thickPen = new Pen(Color.White,2.0f);
    Pen thick = new Pen(Color.Red, 2.0f);

    //矩形区域
    Rectangle[] rect = { 
                           new Rectangle(50, 50, 300, 100),
                           new Rectangle(50,50,300,300),
                           new Rectangle(100,100,200,400)
                       }; 

    graphics.DrawRectangles(pen, rect);

}

效果

绘制多边形

private void Form1_Paint(object sender, PaintEventArgs e)
{    
    //创建画板从Paint事件中的直接引用Graphics对象
    Graphics graphics = e.Graphics;

    graphics.Clear(Color.Black);

    //定义画笔
    Pen pen = new Pen(Color.White, 3.0f);
    Pen thickPen = new Pen(Color.White,2.0f);
    Pen thick = new Pen(Color.Red, 2.0f);

    //多边形个点坐标
    Point[] points = {
                         new Point(10,10),
                         new Point(5,25),
                         new Point(35,200),
                         new Point(80,100),
                         new Point(50,70)
                     };

    graphics.DrawPolygon(pen, points);

}

 

矩形、多边形都能有函数能绘制出来,没有三角形的绘制函数?如何绘制三角形呢?

用DrawPolygon绘制等腰三角形

private void Form1_Paint(object sender, PaintEventArgs e)
{    
    //创建画板从Paint事件中的直接引用Graphics对象
    Graphics graphics = e.Graphics;

    graphics.Clear(Color.Black);

    //定义画笔
    Pen pen = new Pen(Color.White, 3.0f);
    Pen thickPen = new Pen(Color.White,2.0f);
    Pen thick = new Pen(Color.Red, 2.0f);

    //三角形个点坐标
    Point[] points = {
                         new Point(100,100),
                         new Point(50,250),
                         new Point(150,250)
                     };

    graphics.DrawPolygon(pen, points);

}

效果

转载于:https://www.cnblogs.com/kiny/articles/2508116.html

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值