123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132 |
- // 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面
- // (“Fluent UI”)。该示例仅供参考,
- // 用以补充《Microsoft 基础类参考》和
- // MFC C++ 库软件随附的相关电子文档。
- // 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
- // 若要了解有关 Fluent UI 许可计划的详细信息,请访问
- // https://go.microsoft.com/fwlink/?LinkId=238214.
- //
- // 版权所有(C) Microsoft Corporation
- // 保留所有权利。
- // ChildFrm.cpp: CChildFrame 类的实现
- //
- #include "stdafx.h"
- #include "framework.h"
- #include "SATHelper.h"
- #include "ChildFrm.h"
- #ifdef _DEBUG
- #define new DEBUG_NEW
- #endif
- // CChildFrame
- IMPLEMENT_DYNCREATE(CChildFrame, CMDIChildWndEx)
- BEGIN_MESSAGE_MAP(CChildFrame, CMDIChildWndEx)
- ON_COMMAND(ID_FILE_PRINT, &CChildFrame::OnFilePrint)
- ON_COMMAND(ID_FILE_PRINT_DIRECT, &CChildFrame::OnFilePrint)
- ON_COMMAND(ID_FILE_PRINT_PREVIEW, &CChildFrame::OnFilePrintPreview)
- ON_UPDATE_COMMAND_UI(ID_FILE_PRINT_PREVIEW, &CChildFrame::OnUpdateFilePrintPreview)
- ON_WM_CREATE()
- END_MESSAGE_MAP()
- // CChildFrame 构造/析构
- CChildFrame::CChildFrame() noexcept
- {
- // TODO: 在此添加成员初始化代码
- }
- CChildFrame::~CChildFrame()
- {
- }
- BOOL CChildFrame::PreCreateWindow(CREATESTRUCT& cs)
- {
- // TODO: 在此处通过修改 CREATESTRUCT cs 来修改窗口类或样式
- if( !CMDIChildWndEx::PreCreateWindow(cs) )
- return FALSE;
- // 只去掉最大化最小化按钮;
- //cs.style &= ~(WS_MAXIMIZEBOX | WS_MINIMIZEBOX |WS_THICKFRAME);
- // 去掉整个菜单(最大化、最小化、关闭……),此时GetSystemMenu(FALSE)返回NULL;
- cs.style &= ~WS_SYSMENU;
- cs.style &= ~FWS_ADDTOTITLE;
- return TRUE;
- }
- // CChildFrame 诊断
- #ifdef _DEBUG
- void CChildFrame::AssertValid() const
- {
- CMDIChildWndEx::AssertValid();
- }
- void CChildFrame::Dump(CDumpContext& dc) const
- {
- CMDIChildWndEx::Dump(dc);
- }
- #endif //_DEBUG
- // CChildFrame 消息处理程序
- void CChildFrame::OnFilePrint()
- {
- if (m_dockManager.IsPrintPreviewValid())
- {
- PostMessage(WM_COMMAND, AFX_ID_PREVIEW_PRINT);
- }
- }
- void CChildFrame::OnFilePrintPreview()
- {
- if (m_dockManager.IsPrintPreviewValid())
- {
- PostMessage(WM_COMMAND, AFX_ID_PREVIEW_CLOSE); // 强制关闭“打印预览”模式
- }
- }
- void CChildFrame::OnUpdateFilePrintPreview(CCmdUI* pCmdUI)
- {
- pCmdUI->SetCheck(m_dockManager.IsPrintPreviewValid());
- }
- BOOL CChildFrame::Create(LPCTSTR lpszClassName, LPCTSTR lpszWindowName, DWORD dwStyle, const RECT& rect, CMDIFrameWnd* pParentWnd, CCreateContext* pContext)
- {
- // TODO: 在此添加专用代码和/或调用基类
-
- return CMDIChildWndEx::Create(lpszClassName, lpszWindowName, dwStyle, rect, pParentWnd, pContext);
- }
- int CChildFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
- {
- if (CMDIChildWndEx::OnCreate(lpCreateStruct) == -1)
- return -1;
- // TODO: 在此添加您专用的创建代码
- #if 0
- CMenu* pSysMenu = GetSystemMenu(FALSE);
- ASSERT(pSysMenu != NULL);
- VERIFY(pSysMenu->RemoveMenu(SC_CLOSE, MF_BYCOMMAND));
- #endif
- return 0;
- }
- void CChildFrame::ActivateFrame(int nCmdShow)
- {
- // TODO: 在此添加专用代码和/或调用基类
- nCmdShow = SW_MAXIMIZE;
- CMDIChildWndEx::ActivateFrame(nCmdShow);
- }
|