这种功能大家都应该见过,上次由于一个网友在CSDN问这个问题,所以我就写了一个.虽然本人工作是跟图形相关的,但都是三维方面的,二维方面的还真很少接触,特别是GDI,所以写这个程序伤了不少脑筋,写的代码也比较粗糙.同时,对应的还有另一个程序,就是用鼠标按住拖动划出一个矩形,然后显示其中的内容.
这里简单说一下思路,就暂时不贴代码了.
对于一个固定的矩形框拖动:首先是在DC上绘制一个矩形,根据其跟鼠标在其中第一次按下的位置,实时重绘,从而实现拖动这个矩形框的目的.
下一步就是根据这个矩形框的Rect,不断捕获其中的象素信息,并在另一个DC里显示出来.
对于划出一个矩形的程序,主要是根据鼠标的移动来绘制出一个矩形,显示方法与前一个相同.
以下是两个程序的下载地址:
http://www.bezier.com.cn/study/固定矩形.exe
http://www.bezier.com.cn/study/划矩形.exe
程序均用VC++6.0开发.
交流信箱:zhucde@163.com