• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C#Winform画线

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

在Winform中实现的效果如下:

 

WPF画线参考:C# WPF画线 - 十年新 - 博客园 (cnblogs.com)

代码请参考:

 1 using System.Drawing;
 2 using System.Drawing.Drawing2D;
 3 using System.Windows.Forms;
 4 
 5 namespace DrawLineDemo
 6 {
 7     public partial class Form1 : Form
 8     {
 9         public Form1()
10         {
11             InitializeComponent();
12         }
13 
14         public Point PointStart, PointEnd;//定义连线之间的两点,PointStart:起始点;PointEnd:结束点;
15         public int Flag = 0;
16 
17         private void Form1_MouseUp(object sender, MouseEventArgs e)
18         {
19             Flag = 0;
20         }
21 
22         private void Form1_MouseMove(object sender, MouseEventArgs e)
23         {
24             Text = "Location:X=" + e.X.ToString() + ",Y=" + e.Y.ToString();
25             if (Flag == 0)
26                 return;
27             Pen pen = new Pen(Color.Gray, 1);//灰色画笔,宽度为1
28             pen.DashStyle = DashStyle.Custom;
29             pen.DashPattern = new float[] { 9f, 1f };//虚线:实体和空白的比例
30             pen.StartCap = LineCap.RoundAnchor;//圆点开始
31             pen.EndCap = LineCap.ArrowAnchor;//结束为箭头
32             Graphics g = CreateGraphics();
33             //指定画图的呈现质量
34             g.SmoothingMode = SmoothingMode.HighQuality;
35             g.InterpolationMode = InterpolationMode.HighQualityBicubic;
36             g.CompositingQuality = CompositingQuality.HighQuality;
37             PointEnd.X = e.X;
38             PointEnd.Y = e.Y;
39             g.Clear(BackColor);//清除之前的画线
40             g.DrawLine(pen, PointStart.X, PointStart.Y, PointEnd.X, PointEnd.Y);//画线
41         }
42 
43         private void Form1_MouseDown(object sender, MouseEventArgs e)
44         {
45             Flag = 1;
46             PointStart.X = e.X;
47             PointStart.Y = e.Y;
48         }
49     }
50 }

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
【C++】位运算实现加减乘除发布时间:2022-07-13
下一篇:
C#将DataTable转化成数组发布时间:2022-07-13
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap