闂傚倷娴囬妴鈧柛瀣崌閺岀喖顢涘⿰鍐炬毉濡炪們鍎婚幏锟� (0) +1 闂備浇宕垫慨宥咁吋閸℃浼� (0) +1 闂傚倸鍊搁オ瀛樼閻戣棄绠柨鐕傛嫹 (0) +1
闂傚倷娴囬妴鈧柛瀣崌閺岀喖顢涘⿰鍐炬毉濡炪們鍎查崹鍧楀蓟閻旇 鍋撳☉娅亝鎱ㄩ崶褉鏀芥い鏇炴鐎氾拷闂傚倷绀侀幖顐ゆ偖椤愶箑纾块柛鎰嚋閼板潡鏌涘☉娆愮稇缂備讲鏅犻弻鐔碱敍濠婂喚鏆銈冨劵閹凤拷>>

正在阅读:为MFC应用程序添全屏幕显示功能为MFC应用程序添全屏幕显示功能

2004-11-05 10:06 出处:PConline 作者:i_like_cpp 责任编辑:linjixiong

  在CMainFrame类中添加下列成员变量和成员函数(使用ClassWizard),下面是这些变量和函数的功能说明:

  成员变量:
  BOOL m_bFullScreen; //全屏幕显示标志
  CRect m_FullScreenWindowRect; //全屏幕显示窗口Rect
  WINDOWPLACEMENT m_wpPrev; //用于保存正常视图时的窗口位置信息
  CToolBar * m_wndFullScreenBar; //全屏幕显示时的浮动工具条

  成员函数:
  void OnMenuFullscreen(); //全屏幕显示的处理函数
  void OnGetMinMaxInfo(); //捕获WM_GETMINMAXINFO消息以便允许你增加窗口大小
  void OnUpdateViewFullScreen(); //更新“全屏幕显示”菜单的状态

  源码


  void CMainFrame::OnMenuFullscreen()
  {//全屏幕显示的处理函数
  RECT rectDesktop;
  WINDOWPLACEMENT wpNew;

  if (m_bFullScreen)
  {//全屏幕显示模式
  //隐藏工具条和状态条
  m_wndStatusBar.ShowWindow(SW_HIDE);
  m_wndToolBar.ShowWindow(SW_HIDE);

  //保存正常视图时的窗口位置信息以便恢复原来状态
  GetWindowPlacement (&m_wpPrev);
  m_wpPrev.length = sizeof m_wpPrev;

  //调整RECT为新的窗口尺寸
  ::GetWindowRect ( ::GetDesktopWindow(), &rectDesktop );
  ::AdjustWindowRectEx(&rectDesktop, GetStyle(), TRUE, GetExStyle());

  //保存RECT以便OnGetMinMaxInfo()使用
  m_FullScreenWindowRect = rectDesktop;

  wpNew = m_wpPrev;
  wpNew.showCmd = SW_SHOWNORMAL;
  wpNew.rcNormalPosition = rectDesktop;

  //生成新的工具条
  m_wndFullScreenBar=new CToolBar;

  if(!m_wndFullScreenBar->Create(this, CBRS_SIZE_DYNAMIC|CBRS_FLOATING)
  || !m_wndFullScreenBar->LoadToolBar(IDR_FULLSCREEN))
  {
  TRACE0("Failed to create toolbar\n");
  return; // fail to create
  }


察看评论详细内容 我要发表评论
作者笔名 简短内容 发表时间
:

键盘也能翻页,试试“← →”键

相关文章

关注我们

最新资讯离线随时看 聊天吐槽赢奖品
闂傚倷绀佺紞濠傖缚瑜旈、鏍幢濡炵粯鏁犻梺閫炲苯澧撮柟顔款潐閹峰懘宕ㄦ繝鍌欐樊婵犵妲呴崑鎾诲箯閿燂拷闂傚倷鐒﹂幃鍫曞磿閹惰棄纾绘繛鎴欏灩閺勩儵鎮橀悙鏉垮珟濞存粍绮撻弻娑㈩敃閿濆棛顦ラ梺鍛婃閹凤拷