ChildFrm.cpp 2.1 KB

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