C#Graphics类绘制直线与拖动
来源:互联网 发布:江苏减招事件知乎 编辑:程序博客网 时间:2024/06/06 01:44
Grapgics对象类似画布或者一张纸,供其他对象在上面作图。具体用Grapgics类绘制一条直线的方法如下:
Graphics g;
Pen newPen = new Pen(Color.Yellow);//定义一个画笔,黄色
Point startP = new Point(20,20);//线的起始点坐标
Point endP = new Point(100,100);//线的终止点坐标
Line line ;
line = new Line(startP, endP);
g = this.pictureBox1.CreateGraphics();
g.DrawLine(newPen, line.startPoint, line.endPoint);//绘制直线
这样直线就画出来了,为了能拖动线的终止点,首先当鼠标在线的终止点上时,变换线的颜色(下面的方法都在MouseMove事件中):
//获取当前鼠标位置
Point p = new Point();
p.X = e.X;
p.Y = e.Y;
Rectangle rect = new Rectangle(line.endPoint.X - 3, line.endPoint.Y - 3, 6, 6);//定义一个区域,当鼠标在这个区域内时,改变线的颜色
if (p.X >= rect.X && p.X <= rect.Right && p.Y >= rect.Top && p.Y <= rect.Bottom)
{
//当鼠标靠近线的尾端的时候,变成蓝色
newPen.Color = Color.Blue;
g.DrawLine(newPen, line.startPoint, line.endPoint);
}
拖动直线:
//移动直线的时候为红色
this.pictureBox1.Refresh();//刷新界面,不然的话整个界面上到处都是线
newPen.Color = Color.Red;
line.endPoint = p;
g.DrawLine(newPen, line.startPoint, line.endPoint);
上面只是一个简单的例子,等以后有时间了再好好学习一下Graphics中其他的内容。
- C#Graphics类绘制直线与拖动
- C#Graphics类绘制直线与拖动
- Graphics类绘制直线与拖动
- Qt Graphics View Framework绘制直线
- Graphics类绘制图形
- MFC中LButtonDown下拖动鼠标绘制直线
- [Java] Graphics类绘制图形
- C程序绘制余弦曲线和直线
- WinAPI: MoveToEx 与 LineTo - 绘制直线
- 绘制直线
- 绘制几何图形:使用android.graphics类
- 利用Graphics类绘制微笑脸
- 使用java绘图类Graphics绘制圆圈
- 12.5.1 Graphics类与图形绘制和组件重绘的处理
- Graphics类与GDI
- 使用CPen类绘制指定直线
- C/c++语言绘制正弦曲线和相交直线的方法
- 绘制直线和直线剪切
- 屏蔽runtime error等错误的弹出框
- openTSDB ConnectionManager: Unexpected exception from downstream java.io.IOException: Broken pipe
- Android Log系统详解
- ios AFNetworking 实用篇
- 修改 mysql 的字符编码
- C#Graphics类绘制直线与拖动
- 通过电影有效速记GRE词汇方法之从听力突破口语语音
- 跨服务器访问数据库
- ECShop在PHP 5.4以上版本报错的解决
- (我总结的实用主义)Loadrunner运行常见错误
- 双向链表的一个C++实现
- 第十四周阅读程序(7):对二进制文件操作
- hdu5247找连续数(打表)
- Android设置Selector不同状态下颜色及图片