Launch 第一篇

MFC UI界面向来都是步骤一样,先从OnInitDialog到OnPaint,中间的OnEraseBkgnd,DestoryWindow函数等等,这里就不多写了,今天学到的东西是窗口的滑动,消息响应的顺序是从OnLButtonDown到OnMouseMove最后是OnLButtonUp。
具体的做法是在OnLButtonDown中记下最新落点的位置m_LButtonDownPoint,点击CPANButton的时候注意改变CPANButton的背景,m_bInSide这个变量表示是否跳到另一个操作界面,注意是跳到!不是滑动的页面!利用rtOutSideBtn[InSideBtnSide].PtInRect(point)判断是否触碰到按钮,然后利用BitBlt函数将之前写好的页面刷出来,就跳到另一个页面了。
最重要的是在OnMouseMove函数中,MoveButton函数判定鼠标点击在下盘部分时,移动所有按钮!若向左移动多少,就让按钮移动多少。
接下来的操作时在OnLButtonUp里面看是不是滑动到另一页去,这里要先判断向左还是向右滑的,m_TotalMoveDistance>0,表示向右拖,继续调用MoveButton函数,将所有按钮移动800-已经移动的值,这样所有的按钮相当于移动了800,也就是整个页面被替换了!
以前有一个误区,以为MoveWindow函数的参数是个CRect,原来是左边,顶部,宽度和高度,明天任务是写一个滑动的listBox。
                                                                           
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值