⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 myuidoc.cpp

📁 Visual C++高级编程及其项目应用开发(含源代码)
💻 CPP
字号:
// myUIDoc.cpp : implementation of the CMyUIDoc class
//

#include "stdafx.h"
#include "myUI.h"

#include "myUIDoc.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CMyUIDoc

IMPLEMENT_DYNCREATE(CMyUIDoc, CDocument)

BEGIN_MESSAGE_MAP(CMyUIDoc, CDocument)
	//{{AFX_MSG_MAP(CMyUIDoc)
	ON_COMMAND(IDR_TEST_COMBOBOX, OnSelChangedExCmb)
	ON_UPDATE_COMMAND_UI(IDR_TEST_COMBOBOX, OnUpdateExCmb)
	ON_UPDATE_COMMAND_UI(ID_AUDIO, OnUpdateAudio)
	ON_UPDATE_COMMAND_UI(ID_BOOK, OnUpdateBook)
	ON_COMMAND(ID_AUDIO, OnAudio)
	ON_COMMAND(ID_BOOK, OnBook)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CMyUIDoc construction/destruction

CMyUIDoc::CMyUIDoc()
{
	// TODO: add one-time construction code here

}

CMyUIDoc::~CMyUIDoc()
{
}

BOOL CMyUIDoc::OnNewDocument()
{
	if (!CDocument::OnNewDocument())
		return FALSE;

	// TODO: add reinitialization code here
	// (SDI documents will reuse this document)

	return TRUE;
}



/////////////////////////////////////////////////////////////////////////////
// CMyUIDoc serialization

void CMyUIDoc::Serialize(CArchive& ar)
{
	if (ar.IsStoring())
	{
		// TODO: add storing code here
	}
	else
	{
		// TODO: add loading code here
	}
}

/////////////////////////////////////////////////////////////////////////////
// CMyUIDoc diagnostics

#ifdef _DEBUG
void CMyUIDoc::AssertValid() const
{
	CDocument::AssertValid();
}

void CMyUIDoc::Dump(CDumpContext& dc) const
{
	CDocument::Dump(dc);
}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CMyUIDoc commands

void CMyUIDoc::OnSelChangedExCmb() 
{
	// TODO: Add your command handler code here
	//从LPARAM中找到组合框
	HWND hWnd = reinterpret_cast<HWND>(AfxGetApp()->m_msgCur.lParam);
	CComboBox *pCmb = static_cast<CComboBox*>(CWnd::FromHandle(hWnd));

	//更新文档
	m_test = static_cast<TEST>(pCmb->GetCurSel());
	UpdateAllViews(NULL);
	SetModifiedFlag();
}

void CMyUIDoc::OnUpdateExCmb(CCmdUI* pCmdUI) 
{
	// TODO: Add your command update UI handler code here
	//从pCmdUI中找到组合框
	CComboBox *pCmb = static_cast<CComboBox*>(pCmdUI->m_pOther);

	//检验以防止闪烁
	if(m_test != pCmb->GetCurSel() && !pCmb->GetDroppedState())
	{
		pCmb->SetCurSel(m_test);
	}
}

void CMyUIDoc::OnUpdateAudio(CCmdUI* pCmdUI) 
{
	// TODO: Add your command update UI handler code here
	pCmdUI->SetCheck(m_test == AUDIO);
}

void CMyUIDoc::OnUpdateBook(CCmdUI* pCmdUI) 
{
	// TODO: Add your command update UI handler code here
	pCmdUI->SetCheck(m_test == BOOK);
}

void CMyUIDoc::OnAudio() 
{
	// TODO: Add your command handler code here
	m_test = AUDIO;
	UpdateAllViews( NULL );
	SetModifiedFlag( TRUE );
}

void CMyUIDoc::OnBook() 
{
	// TODO: Add your command handler code here
	m_test = BOOK;
	UpdateAllViews( NULL );
	SetModifiedFlag( TRUE );
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -