mfc窗口最大化和最小化处理

最大化、最小化、恢复的时候都要产生WM_SIZE消息。响应WM_SIZE消息的是OnSize,所以可以重载此函数来处理最小化的时候要做的操作。
afx_msg   void   OnSize(   UINT   nType,   int   cx,   int   cy   );

Parameters

nType

Specifies   the   type   of   resizing   requested.   This   parameter   can   be   one   of   the   following   values:  

SIZE_MAXIMIZED       Window   has   been   maximized.


SIZE_MINIMIZED       Window   has   been   minimized.


SIZE_RESTORED       Window   has   been   resized,   but   neither   SIZE_MINIMIZED   nor   SIZE_MAXIMIZED   applies.


SIZE_MAXHIDE       Message   is   sent   to   all   pop-up   windows   when   some   other   window   is   maximized.


SIZE_MAXSHOW       Message   is   sent   to   all   pop-up   windows   when   some   other   window   has   been   restored   to   its   former   size.  
cx

Specifies   the   new   width   of   the   client   area.

cy

Specifies   the   new   height   of   the   client   area.

Remarks

The   framework   calls   this   member   function   after   the   window’s   size   has   changed.  

If   the   SetScrollPos   or   MoveWindow   member   function   is   called   for   a   child   window   from   OnSize,   the   bRedraw   parameter   of   SetScrollPos   or   MoveWindow   should   be   nonzero   to   cause   the   CWnd   to   be   repainted.

Note       This   member   function   is   called   by   the   framework   to   allow   your   application   to   handle   a   Windows   message.   The   parameters   passed   to   your   function   reflect   the   parameters   received   by   the   framework   when   the   message   was   received.   If   you   call   the   base-class   implementation   of   this   function,   that   implementation   will   use   the   parameters   originally   passed   with   the   message   and   not   the   parameters   you   supply   to   the   function.

Example

//   Resize   the   list   control   contained   in   the   view   to
//   fill   the   entire   view   when   the   view 's   window   is
//   resized.   CMyView   is   a   CView   derived   class.
void   CMyView::OnSize(UINT   nType,   int   cx,   int   cy)  
{
      CView::OnSize(nType,   cx,   cy);
      //   Resize   list   to   fill   the   whole   view.
      m_List.MoveWindow   (0,   0,   cx,   cy);
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值