当前位置:编程学习 > C#/ASP.NET >>

如何,在Panel中按下鼠标右键并移动时,Panel中的控件向相反方向移动

各位大侠,我是个菜.请多指教

由于需要绘图,所以我在panel中创建了多个自定义控件,并用线条连接起来,但Panel的可见区域有限,整个TOP图已经超出.

我希望做到,右键Panel空白的地方,并拖动时,panel中的控件能够向鼠标运动相反方向运动,不知道怎么做,请指教哈!

谢谢 --------------------编程问答-------------------- 那需要获取当前坐标值,然后再设定控件的坐标值,鼠标移动,看坐标 是 加还是减 ,  为加控件坐标值减 ,若  为减 控件坐标值加。 
鼠标的事件是  MouseMove。 --------------------编程问答--------------------
引用 1 楼 guotongyu1 的回复:
那需要获取当前坐标值,然后再设定控件的坐标值,鼠标移动,看坐标 是 加还是减 ,  为加控件坐标值减 ,若  为减 控件坐标值加。 
鼠标的事件是  MouseMove。

panel中有多个控件,这样做了以后,屏幕狂闪,用双缓冲也无济于事.还有再简单的办法吗? --------------------编程问答-------------------- 鼠标移动 要有固定数量的控件移动?你可以用一个容器将要移动的控件放到一起。移动容器  会不会好一点 --------------------编程问答-------------------- --------------------编程问答--------------------
引用 3 楼 guotongyu1 的回复:
鼠标移动 要有固定数量的控件移动?你可以用一个容器将要移动的控件放到一起。移动容器  会不会好一点


不会,还是狂闪,我认为原因是控件数量没有变化.

但我有了另外一个思路,就是用鼠标框起一部分控件,再按照你所说的,新建一个容器,把框起的控件进行移动. --------------------编程问答-------------------- 恩,本来捕获鼠标坐标  就相当的耗性能,鼠标一动就触发事件,一直动  ,不知触发了多少次! --------------------编程问答--------------------  双缓冲咋用的
不会闪,也不会狂
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,