winform关于在picturebox上画线问题

sinat_36134321 2017-12-14 10:10:48
最近在做winform的截图功能,需要画箭头,但是,我是在截取后获得一个图层,在这个图层上进行绘制。问题就在于mousedown
mousemove都是在pictubox上操作。那怎样把箭头绘制在显示的图层上。另外 g.Clear(this.pictureBox1.BackColor);这个语句会清掉picturebox的图片,不加的话,随着鼠标的移动会生成无数条线,请问一下这种问题怎么解决?感谢大家
...全文
391 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
指尖魔术师 2017-12-14
  • 打赏
  • 举报
回复
不要用clear方法,而是每次在重新绘制一遍图片就行了。
指尖魔术师 2017-12-14
  • 打赏
  • 举报
回复
有个笨办法: private Boolean bStart = false; private Point start; private void pictureBox1_MouseDown(object sender, MouseEventArgs e) { if (!bStart) { bStart = true; start = new Point(e.X, e.Y); } } private void pictureBox1_MouseUp(object sender, MouseEventArgs e) { if (bStart) { bStart = false; } } private void pictureBox1_MouseMove(object sender, MouseEventArgs e) { if (bStart) { Graphics gf = this.pictureBox1.CreateGraphics(); gf.DrawImage(this.pictureBox1.Image, new Point(0, 0)); using (Pen pen = new Pen(Brushes.Red)) { gf.DrawLine(pen, start, new Point(e.X, e.Y)); } } }

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧