dialogtoolsbar.cpp

来自「混乱竞技场的全套代码,客户端资源可以网上搜」· C++ 代码 · 共 154 行

CPP
154
字号
// MapInfoBar.cpp : implementation file
//

#include "stdafx.h"
#include "gstools.h"
#include "DialogToolsBar.h"

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

/////////////////////////////////////////////////////////////////////////////
// CDialogToolsBar

CDialogToolsBar::CDialogToolsBar(CWnd *parent, UINT id)
{
	m_wnd	= NULL;
	CString const	class_name(
								::AfxRegisterWndClass(
										CS_DBLCLKS | CS_HREDRAW | CS_VREDRAW,
										::LoadCursor( NULL, IDC_ARROW ),
										reinterpret_cast< HBRUSH >( COLOR_BTNFACE + 1 ) ) );

	BOOL bRet = initialize( class_name, "工具", id, WS_CHILD | WS_VISIBLE | CBRS_LEFT | CBRS_TOOLTIPS, CBRS_EX_COOL, CSize(0, 0), parent );
	assert ( bRet );
//	bRet = m_animation_tools.Create(this);
//	assert( m_pMapInfoDlg	= new CMapInfoDlg );
//	assert( bRet );
//	assert( m_pImageToolsDlg	= new CImageToolsDlg );
//	assert( m_pImageToolsDlg->Create(this) );

//	SetTool(MAP_TOOL);
}

CDialogToolsBar::~CDialogToolsBar()
{
//	SAFE_DELETE(m_pMapInfoDlg);
//	SAFE_DELETE(m_pImageToolsDlg);
}


BEGIN_MESSAGE_MAP(CDialogToolsBar, CFixedSizeControlBar)
	//{{AFX_MSG_MAP(CDialogToolsBar)
	ON_WM_SIZE()
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()


/////////////////////////////////////////////////////////////////////////////
// CDialogToolsBar message handlers

void CDialogToolsBar::OnSize(UINT nType, int cx, int cy) 
{
	CFixedSizeControlBar::OnSize(nType, cx, cy);
	
	// TODO: Add your message handler code here
	CRect inside_rect;
	GetInsideRect( inside_rect );

	if(m_wnd)
		m_wnd->MoveWindow( inside_rect );
	
}

BOOL CDialogToolsBar::UpdateTools()
{
//	CRect rc;
//	if(m_wnd)
//	{
//		m_wnd->ShowWindow(SW_HIDE);
//		m_wnd=NULL;
//	}
//
////	if(g_pWndAnimation && g_pWndAnimation->IsWindowVisible())
//	{
//		m_wnd	= &m_animation_tools;
//		m_wnd->ShowWindow(SW_SHOW);
//		m_wnd->GetWindowRect(&rc);
//		SetSize(CSize(rc.Width(), rc.Height()));
//		SetWindowText("动画工具");
//		//g_pMainFrame->ShowControlBar(this, true, TRUE);
//
//		return true;
//	}
//
//	g_pMainFrame->ShowControlBar(this, false, TRUE);
//
//	if(g_pWndAnimation->IsWindowVisible())
//	{
//		m_wnd	= &m_animation_tools;
//		m_wnd->ShowWindow(SW_SHOW);
//		m_wnd->GetWindowRect(&rc);
//		SetSize(CSize(rc.Width(), rc.Height()));
//		return true;
//	}

/*
	CRect rc;
	if(m_curToolWnd)
		m_curToolWnd->ShowWindow(SW_HIDE);
	switch(tool)
	{
	case	NULL_TOOL:
		break;
	case	IMAGE_TOOL:
		m_curToolWnd	= m_pImageToolsDlg;
		m_curToolWnd->ShowWindow(SW_SHOW);
		m_pImageToolsDlg->GetWindowRect(&rc);
		SetSize(CSize(rc.Width(), rc.Height()));
		break;
	case	MAP_TOOL:
		m_curToolWnd	= m_pMapInfoDlg;
		m_curToolWnd->ShowWindow(SW_SHOW);
		m_pMapInfoDlg->GetWindowRect(&rc);
		SetSize(CSize(rc.Width(), rc.Height()));
		break;
	}
*/
	return false;
}




VOID CDialogToolsBar::SetTools(CWnd *wndTools)
{
	if(m_wnd)
	{
		if(IsWindow(m_wnd->m_hWnd))
			m_wnd->ShowWindow(SW_HIDE);
		else
			return;
		m_wnd=NULL;
	}
	if(wndTools)
	{
		CRect rc;
		m_wnd	= wndTools;
		m_wnd->ShowWindow(SW_SHOW);
		m_wnd->GetWindowRect(&rc);
		SetSize(CSize(rc.Width(), rc.Height()));
		CString str;
		m_wnd->GetWindowText(str);
		SetWindowText(str);
		//g_pMainFrame->ShowControlBar(this, true, TRUE);
	}

	if(g_pMainFrame)
		g_pMainFrame->ShowControlBar(this, false, TRUE);

}

⌨️ 快捷键说明

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