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

📄 mysplitterwnd.cpp

📁 一个很好的虚拟示波器!可一直接运行!他通过串口采集信号与系统单片机上的数据
💻 CPP
字号:
// MySplitterWnd.cpp: implementation of the CMySplitterWnd class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "MySplitterWnd.h"

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

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
IMPLEMENT_DYNCREATE(CMySplitterWnd, CSplitterWnd)

BEGIN_MESSAGE_MAP(CMySplitterWnd, CSplitterWnd)
	//{{AFX_MSG_MAP(CSdsdView)
	ON_WM_LBUTTONDOWN()
	//}}AFX_MSG_MAP
	// Standard printing commands

END_MESSAGE_MAP()

CMySplitterWnd::CMySplitterWnd()
{
	m_cxSplitter = 4;    //must >=4 ,拖动时拖动条的宽度
	m_cySplitter = 4;    
	m_cxBorderShare = 1; //按下鼠标时拖动条的偏移量
	m_cyBorderShare = 1;  
	m_cxSplitterGap= 1;  //splitter拖动条的宽度   
	m_cySplitterGap= 1;

}

CMySplitterWnd::~CMySplitterWnd()
{

}

void   CMySplitterWnd::HideSplitter()
{
	//m_cx=m_cxSplitterGap;//save   previous   cx   
	//m_cy=m_cxSplitterGap;//save   previous   cy   
	//m_cxSplitter = 0;    //must >=4 ,拖动时拖动条的宽度
	//m_cySplitter = 0;    
	//m_cxBorderShare = 1; //按下鼠标时拖动条的偏移量
	//m_cyBorderShare = 1;

	m_cxSplitterGap=0;   
	m_cySplitterGap=0;  
}

void CMySplitterWnd::OnDrawSplitter(CDC* pDC, ESplitType nType, const CRect& rectArg)
{    
	if (pDC == NULL)
	{   
		RedrawWindow(rectArg,NULL,RDW_INVALIDATE|RDW_NOCHILDREN);   
		return;   
	}   
	ASSERT_VALID(pDC);   
    
	//   otherwise,   actually   draw   
	CRect rect = rectArg;   
	if(nType == splitBorder)   
	{   
		pDC->Draw3dRect(rect,GetSysColor(COLOR_BTNFACE),GetSysColor(COLOR_BTNFACE));   
		rect.InflateRect(-1,-1);   
		pDC->Draw3dRect(rect,GetSysColor(COLOR_BTNSHADOW),GetSysColor(COLOR_BTNSHADOW));   
		return;   
	}   
    
	//fill the middle   
	else{   
		COLORREF clr = GetSysColor(COLOR_3DHILIGHT);   
		pDC->FillSolidRect(rect,clr);       
	}   

}

// 不让CSplitterWnd来处理WM_LBUTTONDOWN消息,
//而是将这些消息交给CWnd窗口进行处理,从而屏蔽掉这些消息。 

void CMySplitterWnd::OnLButtonDown(UINT nFlags,CPoint point)
{ 
        CWnd::OnLButtonDown(nFlags,point);
} 

⌨️ 快捷键说明

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