ChildFrm.cpp 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  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 "FieldTestTool.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. // 只去掉最大化最小化按钮;
  41. //cs.style &= ~(WS_MAXIMIZEBOX | WS_MINIMIZEBOX |WS_THICKFRAME);
  42. // 去掉整个菜单(最大化、最小化、关闭……),此时GetSystemMenu(FALSE)返回NULL;
  43. //cs.style &= ~(WS_SYSMENU|FWS_ADDTOTITLE);
  44. return TRUE;
  45. }
  46. // CChildFrame 诊断
  47. #ifdef _DEBUG
  48. void CChildFrame::AssertValid() const
  49. {
  50. CMDIChildWndEx::AssertValid();
  51. }
  52. void CChildFrame::Dump(CDumpContext& dc) const
  53. {
  54. CMDIChildWndEx::Dump(dc);
  55. }
  56. #endif //_DEBUG
  57. // CChildFrame 消息处理程序
  58. void CChildFrame::OnFilePrint()
  59. {
  60. if (m_dockManager.IsPrintPreviewValid())
  61. {
  62. PostMessage(WM_COMMAND, AFX_ID_PREVIEW_PRINT);
  63. }
  64. }
  65. void CChildFrame::OnFilePrintPreview()
  66. {
  67. if (m_dockManager.IsPrintPreviewValid())
  68. {
  69. PostMessage(WM_COMMAND, AFX_ID_PREVIEW_CLOSE); // 强制关闭“打印预览”模式
  70. }
  71. }
  72. void CChildFrame::OnUpdateFilePrintPreview(CCmdUI* pCmdUI)
  73. {
  74. pCmdUI->SetCheck(m_dockManager.IsPrintPreviewValid());
  75. }