OpenCV中文网站

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 安装 配置
查看: 2822|回复: 3

c#中用鼠标画矩形框的插件.dll文件是哪个

[复制链接]
发表于 2015-4-24 11:12:16 | 显示全部楼层 |阅读模式
求大神指点,就是代码里的那几个mouseDown、MouseUp什么的
  1. <font color="#ff0000"> private bool mouseStatus = false;</font>
  2. <font color="#ff0000">        private List<Rectangle> rectList = new List<Rectangle>();</font>
  3. <font color="#ff0000">        private Point startPoint;</font>
  4. <font color="#ff0000">        private Point endPoint;</font>
  5. <font color="#ff0000">        private Rectangle currRect;</font>
  6. <font color="#ff0000">        private int minStartX, minStartY, maxEndX, maxEndY;</font>
  7. <font size="6"><b><i><font color="#000000">        private void Form1_</font><font color="#ff0000">MouseDown</font><font color="#000000">(object sender, MouseEventArgs e)</font></i></b></font>
  8. <font color="#ff0000">        {</font>
  9. <font color="#ff0000">            mouseStatus = true;</font>
  10. <font color="#ff0000">            startPoint.X = e.X;</font>
  11. <font color="#ff0000">            startPoint.Y = e.Y;</font>

  12. <font color="#ff0000">        }</font>
  13. <font size="6"><b><i><font color="#000000">        private void Form1_</font><font color="#ff0000">MouseMove</font><font color="#000000">(object sender, MouseEventArgs e)</font></i></b></font>
  14. <font color="#ff0000">        {</font>
  15. <font color="#ff0000">            if (mouseStatus)</font>
  16. <font color="#ff0000">            {</font>
  17. <font color="#ff0000">                endPoint.X = e.X; endPoint.Y = e.Y;</font>
  18. <font color="#ff0000">                int realStartX = Math.Min(startPoint.X, endPoint.X);</font>
  19. <font color="#ff0000">                int realStartY = Math.Min(startPoint.Y, endPoint.Y);</font>
  20. <font color="#ff0000">                int realEndX = Math.Max(startPoint.X, endPoint.X);</font>
  21. <font color="#ff0000">                int realEndY = Math.Max(startPoint.Y, endPoint.Y);</font>

  22. <font color="#ff0000">                minStartX = Math.Min(minStartX, realStartX);</font>
  23. <font color="#ff0000">                minStartY = Math.Min(minStartY, realStartY);</font>
  24. <font color="#ff0000">                maxEndX = Math.Max(maxEndX, realEndX);</font>
  25. <font color="#ff0000">                maxEndY = Math.Max(maxEndY, realEndY);</font>
  26. <font color="#ff0000">                currRect = new Rectangle(realStartX, realStartY, realEndX - realStartX, realEndY - realStartY);</font>
  27. <font color="#ff0000">                Rectangle refeshRect = new Rectangle(minStartX, minStartY, maxEndX - minStartX, maxEndY - minStartY);</font>
  28. <font color="#ff0000">                refeshRect.Inflate(1, 1);</font>
  29. <font color="#ff0000">                this.Invalidate(refeshRect);</font>

  30. <font color="#ff0000">            }</font>
  31. <font color="#ff0000">        }</font>
  32. <b><i><font size="6"><font color="#000000">        private void Form1_</font><font color="#ff0000">MouseUp</font><font color="#000000">(object sender, MouseEventArgs e)</font></font></i></b>
  33. <font color="#ff0000">        {</font>
  34. <font color="#ff0000">            mouseStatus = false;</font>
  35. <font color="#ff0000">            endPoint.X = e.X; endPoint.Y = e.Y;</font>
  36. <font color="#ff0000">            int realStartX = Math.Min(startPoint.X, endPoint.X);</font>
  37. <font color="#ff0000">            int realStartY = Math.Min(startPoint.Y, endPoint.Y);</font>
  38. <font color="#ff0000">            int realEndX = Math.Max(startPoint.X, endPoint.X);</font>
  39. <font color="#ff0000">            int realEndY = Math.Max(startPoint.Y, endPoint.Y);</font>
  40. <font color="#ff0000">            currRect = new Rectangle(realStartX, realStartY, realEndX - realStartX, realEndY - realStartY);</font>
  41. <font color="#ff0000">            rectList.Add(currRect);</font>
  42. <font color="#ff0000">            this.Invalidate();</font>
  43. <font color="#ff0000">        }</font>
  44. <font size="6"><b><i><font color="#000000">        private void Form1_</font><font color="#ff0000">Paint</font><font color="#000000">(object sender, PaintEventArgs e)</font></i></b></font>
  45. <font color="#ff0000">        {</font>
  46. <font color="#ff0000">            Graphics g = e.Graphics;</font>
  47. <font color="#ff0000">            g.Clear(this.BackColor);</font>
  48. <font color="#ff0000">            g.DrawRectangle(new Pen(Color.Red, 1), currRect);</font>
  49. <font color="#ff0000">            foreach (Rectangle rect in rectList)</font>
  50. <font color="#ff0000">                g.DrawRectangle(new Pen(Color.Red, 1), rect);</font>
  51. <font color="#ff0000">        }</font>
复制代码


回复

使用道具 举报

发表于 2018-1-15 13:58:26 | 显示全部楼层
水.............................................
回复 支持 反对

使用道具 举报

发表于 2018-11-3 09:44:55 | 显示全部楼层
那个是C++的橡皮筋类 CRectTracker;
回复 支持 反对

使用道具 举报

发表于 2019-2-7 11:50:17 | 显示全部楼层
先要自己分析一下,然后讲出哪里看不懂,才会有人回答你。
坐等别人喂食,会饿死你的,
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|OpenCV中文网站  

GMT+8, 2019-9-21 00:28 , Processed in 0.041445 second(s), 16 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表