C#怎么移动已经绘制的图形

在C#里如何移动已经绘制的图形?比如说在button1的callback下Graphicsgraphics=pictureBox1.CreateGraphics();Re... 在C#里如何移动已经绘制的图形?
比如说在button1的callback下

Graphics graphics = pictureBox1.CreateGraphics();
Rectangle rect = new Rectangle(0, 0, 100, 50);
graphics.DrawRectangle(Pens.Red, rect);

在另一个button2的callback下,想移动这个矩形,该怎么处理?
只能采取设置
rect.Offset(ii, ii);
pictureBox1.Refresh();
graphics.DrawRectangle(pen, rect);
这种重绘的方法么?
如果我pictureBox1上面画了多个图形,重绘,那岂不是得每个图形都重画?
可否对每个图形进行单独改变?
每个图形绘制完后,C#保存每个图形的句柄吗?
展开
 我来答
匿名用户
2013-06-24
展开全部
如果你要选取图形进行移动所放处理,那应该要按照矢量图来存放信息,这个和位图不同。
需要设计一个数据结构存放图形的坐标,长度等信息。
一般常用的做法是定一个各种图形基类,不同的形状定以成派生类,绘制通过类成员函数进行。
那么你的整个矢量图就是一个该类对象的集合,对于如何选取其实就是对于这个集合的遍历,如果你向移动其中一个成员,那么要重新绘制这个集合。
你说的图形的句柄,是否是指位图的那个,我觉得不需要,你如果要用位图,那么就无法实现你说的功能。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式