如何实现按住并拖动时出现一个窗体图像的副本,并拖动它,鼠标放开时图像消失?

解决方案 »

  1.   

    是窗体内一个pictureBox控件中的图像,当按住这个控件时,在控件相同的位置生成相同的图像,然后鼠标移动就拖动这个图像移动,当鼠标放开时图像消失。其实就是实现原图像不动,创建一个新的图像实现拖动
      

  2.   


    果真就像我想象的那样,如果是整个窗口的话,windows自己就已经实现了,所以说你想实现这个效果,估计要在桌面上创建一个虚拟框,然后绘制里面的图像了,复杂
      

  3.   

    上面是其它软件实现的功能,下图是我自己实现的功能,可以拖动。我是用另一个窗体实现的,我不知道llx529 是想用什么方法实现,我想知道其它实现,谢谢。
    还有就是VC#2005 中加载动态gif时,如果窗体被遮盖(也就是引发重画事件)时gif就不动了,因为我已经把窗体ShowInTaskbar = false;和 TransparencyKey = BackColor;所以窗体不引发重画事件,如果在pictureBox控件的重画事件中调用this.pictureBox1.Refresh();的话就会出现画面有重复动作,不知道如何解决
      

  4.   

    用GDI,这种画来画去的东西一般很少使用PictureBox,就是新建一个Image对像,画到窗体上,当MouseDown的时候建Image副本,MouseMove时重绘两个Image,当然新建的Image要跟着Mouse的Location移动,MouseUp时把副本Dispose掉。当然一般做GDI程序最好用双缓存。