ChildFrm.cpp 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. // 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面
  2. // ("Fluent UI"),该示例仅作为参考资料提供,
  3. // 用以补充《Microsoft 基础类参考》和
  4. // MFC C++ 库软件随附的相关电子文档。
  5. // 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
  6. // 若要了解有关 Fluent UI 许可计划的详细信息,请访问
  7. // http://msdn.microsoft.com/officeui。
  8. //
  9. // 版权所有 (C) Microsoft Corporation
  10. // 保留所有权利。
  11. // ChildFrm.cpp : CChildFrame 类的实现
  12. //
  13. #include "stdafx.h"
  14. #include "IDE.h"
  15. #include "ChildFrm.h"
  16. #ifdef _DEBUG
  17. #define new DEBUG_NEW
  18. #endif
  19. // CChildFrame
  20. IMPLEMENT_DYNCREATE(CChildFrame, CMDIChildWndEx)
  21. BEGIN_MESSAGE_MAP(CChildFrame, CMDIChildWndEx)
  22. ON_COMMAND(ID_FILE_PRINT, &CChildFrame::OnFilePrint)
  23. ON_COMMAND(ID_FILE_PRINT_DIRECT, &CChildFrame::OnFilePrint)
  24. ON_COMMAND(ID_FILE_PRINT_PREVIEW, &CChildFrame::OnFilePrintPreview)
  25. ON_UPDATE_COMMAND_UI(ID_FILE_PRINT_PREVIEW, &CChildFrame::OnUpdateFilePrintPreview)
  26. END_MESSAGE_MAP()
  27. // CChildFrame 构造/析构
  28. CChildFrame::CChildFrame()
  29. {
  30. // TODO: 在此添加成员初始化代码
  31. }
  32. CChildFrame::~CChildFrame()
  33. {
  34. }
  35. BOOL CChildFrame::PreCreateWindow(CREATESTRUCT& cs)
  36. {
  37. // TODO: 在此处通过修改 CREATESTRUCT cs 来修改窗口类或样式
  38. if( !CMDIChildWndEx::PreCreateWindow(cs) )
  39. return FALSE;
  40. return TRUE;
  41. }
  42. // CChildFrame 诊断
  43. #ifdef _DEBUG
  44. void CChildFrame::AssertValid() const
  45. {
  46. CMDIChildWndEx::AssertValid();
  47. }
  48. void CChildFrame::Dump(CDumpContext& dc) const
  49. {
  50. CMDIChildWndEx::Dump(dc);
  51. }
  52. #endif //_DEBUG
  53. // CChildFrame 消息处理程序
  54. void CChildFrame::OnFilePrint()
  55. {
  56. if (m_dockManager.IsPrintPreviewValid())
  57. {
  58. PostMessage(WM_COMMAND, AFX_ID_PREVIEW_PRINT);
  59. }
  60. }
  61. void CChildFrame::OnFilePrintPreview()
  62. {
  63. if (m_dockManager.IsPrintPreviewValid())
  64. {
  65. PostMessage(WM_COMMAND, AFX_ID_PREVIEW_CLOSE); // 强制关闭“打印预览”模式
  66. }
  67. }
  68. void CChildFrame::OnUpdateFilePrintPreview(CCmdUI* pCmdUI)
  69. {
  70. pCmdUI->SetCheck(m_dockManager.IsPrintPreviewValid());
  71. }