你可以将你想要移动的图片关联一个类对象,然后在那个新类中响应WM_KEYDOWN和WM_KEYUP消息。之后对这两个消息添加你要处理的操作,就是移动的功能。先对上下左右的方向键进行if()的判断,不同按键处理函数不同。但都是用BOOL SetWindowPos( const CWnd* pWndInsertAfter, int x, int y, int cx, int cy, UINT nFlags );来重新设置你要的移动位置。
你可以定义一个CRect对象 rect;,每当你按下上下键值是,更改rect.left和rect.top的值,紧接着再把图片显示在rect所指区域即可。你还可以更改rect.width(),rect.height()来改变显示的图像的大小。(原图大小始终不用边的)。
如果还有什么不懂得话可以再问我,希望对你有启发。
在键盘相应事件里面移动rect的top和left就可以了
CRect rect;