c#PictureBox的基本使用(画直线,矩形)
来源:互联网 发布:mac如何移动文件夹 编辑:程序博客网 时间:2024/04/28 01:04
- 下面的四个事件一定要绑定,不绑定任何效果都没有的
- private Point m_ptStart = new Point(0, 0);
- private Point m_ptEnd = new Point(0, 0);
- // true: MouseUp or false: MouseMove
- private bool m_bMouseDown = false;
- private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
- {
- if (e.Button != MouseButtons.Left)
- {
- return;
- }
- if (!m_bMouseDown)
- {
- m_ptStart = new Point(e.X, e.Y);
- m_ptEnd = new Point(e.X, e.Y);
- }
- m_bMouseDown = !m_bMouseDown;
- }
- private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
- {
- if (e.Button != MouseButtons.Left)
- {
- return;
- }
- if (m_ptStart.X >= 0 && m_ptEnd.X >= 0
- && m_ptStart.Y >= 0 && m_ptEnd.Y >= 0
- && m_ptStart.X <= 254 && m_ptEnd.X <= 254
- && m_ptStart.Y <= 163 && m_ptEnd.Y <= 163)
- {
- m_ptEnd = new Point(e.X, e.Y);
- m_bMouseDown = !m_bMouseDown;
- this.pictureBox1.Refresh();
- }
- else
- {
- m_ptEnd = m_ptStart;
- m_bMouseDown = !m_bMouseDown;
- this.pictureBox1.Refresh();
- }
- }
- private void pictureBox1_Paint(object sender, PaintEventArgs e)
- {
- if (m_ptStart.Equals(m_ptEnd)) return;
- e.Graphics.DrawLine(System.Drawing.Pens.Red, m_ptStart, m_ptEnd);
- //画矩形加上以下六行
- //if (m_ptEnd.X - m_ptStart.X < 0 || m_ptEnd.Y - m_ptStart.Y < 0)
// {
// return;
//} - //e.Graphics.DrawRectangle(System.Drawing.Pens.Blue, m_ptStart.X, m_ptStart.Y, m_ptEnd.X - m_ptStart.X, m_ptEnd.Y - m_ptStart.Y);
- }
- private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
- {
- if (e.Button != MouseButtons.Left)
- {
- return;
- }
- m_ptEnd = new Point(e.X, e.Y);
- this.pictureBox1.Refresh();
- }
- c#PictureBox的基本使用(画直线,矩形)
- c#PictureBox画直线 矩形
- iOS画矩形、直线、文字的方法
- iOS画矩形、直线、文字的方法
- 画直线,矩形
- OpenCV2基础操作----直线、矩形、圆、椭圆函数的使用
- C# GDI+ 画简单的图形:直线、矩形、扇形等
- Canvas入门(1):绘制矩形、圆、直线、曲线等基本图形
- C#中Picturebox的使用
- C#-—点类,直线类,矩形类之间的继承
- vb使用picturebox画曲线图
- iOS 绘制直线、矩形、文字的方式
- 斩bnuoj 直线与矩形的交点
- opencv画直线圆椭圆矩形
- YUV数据画矩形和直线
- [Cocoa]_[画直线、矩形、文字]
- 如何重写PictureBox的OnPaint方法绘制矩形,并实现拖动改变矩形大小,鼠标悬停时提示拖拽方向(二)
- Canvas基本矩形的
- 三百六十行,行行出状元
- 我
- 关于Application Domain -接上篇加载一个FLEX子应用程序
- 大型作业
- vc dll编译和调用
- c#PictureBox的基本使用(画直线,矩形)
- javascript里如何获取GridView里某一行某一列的值和TextBox的值比较
- float and double,why?
- 老紫竹JAVA提高教程(8)-认识List列表之Vector
- 寻找中文自描述句子
- SQL 注入式攻击的终极防范
- 名诗绝句
- 根据字符串获得相应的类型
- 手把手的教你用MapABC的地图API制作自己的免费地图