DialogMenuGrabber.cpp
上传用户:szled88
上传日期:2015-04-09
资源大小:43957k
文件大小:2k
源码类别:

对话框与窗口

开发平台:

Visual C++

  1. // DialogMenuGrabber.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "commandbarsdesigner.h"
  5. #include "DialogMenuGrabber.h"
  6. #include "EmbeddedFrame.h"
  7. #ifdef _DEBUG
  8. #define new DEBUG_NEW
  9. #undef THIS_FILE
  10. static char THIS_FILE[] = __FILE__;
  11. #endif
  12. /////////////////////////////////////////////////////////////////////////////
  13. // CDialogMenuGrabber dialog
  14. CDialogMenuGrabber::CDialogMenuGrabber(CEmbeddedFrame* pFrame, CWnd* pParent /*=NULL*/)
  15. : CDialog(CDialogMenuGrabber::IDD, pParent)
  16. {
  17. m_pFrame = pFrame;
  18. //{{AFX_DATA_INIT(CDialogMenuGrabber)
  19. // NOTE: the ClassWizard will add member initialization here
  20. //}}AFX_DATA_INIT
  21. }
  22. void CDialogMenuGrabber::DoDataExchange(CDataExchange* pDX)
  23. {
  24. CDialog::DoDataExchange(pDX);
  25. //{{AFX_DATA_MAP(CDialogMenuGrabber)
  26. DDX_Control(pDX, IDC_STATIC_GRABBER, m_wndGrabber);
  27. //}}AFX_DATA_MAP
  28. }
  29. BEGIN_MESSAGE_MAP(CDialogMenuGrabber, CDialog)
  30. //{{AFX_MSG_MAP(CDialogMenuGrabber)
  31. //}}AFX_MSG_MAP
  32. END_MESSAGE_MAP()
  33. /////////////////////////////////////////////////////////////////////////////
  34. // CDialogMenuGrabber message handlers
  35. BOOL CDialogMenuGrabber::OnInitDialog() 
  36. {
  37. CDialog::OnInitDialog();
  38. VERIFY(m_wndMenuBar.CreateToolBar(WS_TABSTOP|WS_VISIBLE|WS_CHILD|CBRS_TOOLTIPS, this));
  39. CXTPClientRect rc(this);
  40. m_wndMenuBar.SetCommandBars(m_pFrame->GetCommandBars());
  41. if (m_wndMenuBar.GetSafeHwnd())
  42. {
  43. CSize sz = m_wndMenuBar.CalcDockingLayout(rc.Width(), /*LM_HIDEWRAP|*/ LM_HORZDOCK|LM_HORZ | LM_COMMIT);
  44. m_wndMenuBar.MoveWindow(0, 0, rc.Width(), sz.cy);
  45. m_wndMenuBar.Invalidate(FALSE);
  46. }
  47. m_wndMenuBar.EnableCustomization(FALSE);
  48. m_wndGrabber.m_pMenuBar = &m_wndMenuBar;
  49. return TRUE;  // return TRUE unless you set the focus to a control
  50.               // EXCEPTION: OCX Property Pages should return FALSE
  51. }