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

📄 imainpanel.cpp

📁 模拟popo的一个程序
💻 CPP
字号:
// IMainPanel.cpp : implementation file
//

#include "stdafx.h"
#include "CNIcq.h"
#include "IMainPanel.h"

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

/////////////////////////////////////////////////////////////////////////////
// CIMainPanel

CIMainPanel::CIMainPanel()
{
	m_pIMTree =new CIMTree;	
	m_pIMHeader = new CIMainHeader;
	m_pIMShortcutTool = new CIMShortcutTool;


}

CIMainPanel::~CIMainPanel()
{
	delete m_pIMShortcutTool;
	delete m_pIMHeader;
	delete m_pIMTree;
}


BEGIN_MESSAGE_MAP(CIMainPanel, CWnd)
	//{{AFX_MSG_MAP(CIMainPanel)
	ON_WM_CREATE()
	ON_WM_PAINT()
	ON_WM_SIZE()
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

//	ON_WM_CN_ITEMCLICK(1010,OnShortcutMessage)

/////////////////////////////////////////////////////////////////////////////
// CIMainPanel message handlers

int CIMainPanel::OnCreate(LPCREATESTRUCT lpCreateStruct) 
{
	if (CWnd::OnCreate(lpCreateStruct) == -1)
		return -1;
	
	// TODO: Add your specialized creation code here

	m_pSkin = &(((CCNIcqApp *)AfxGetApp())->m_IMSkin);
	
	m_pIMHeader->Create(NULL,NULL,WS_CHILD | WS_VISIBLE,
			CRect(0,0,0,0), this, 1010);

	m_pIMTree->Create(WS_CHILD | WS_VISIBLE |  
			//TVS_HASLINES| TVS_LINESATROOT| TVS_HASBUTTONS |
			TVS_SHOWSELALWAYS,
			CRect(0,0,0,0), this, 1011);

	//m_pIMTree->ModifyStyle(WS_VSCROLL,0);

	m_pIMShortcutTool->Create(NULL,NULL,WS_CHILD | WS_VISIBLE,
			CRect(0,0,0,0), this, 1012);

	//m_pIMTree->SetIndent(20);
	m_pIMTree->SetImageList(&m_pSkin->m_pILSmallState,TVSIL_NORMAL);

	m_pIMTree->SetBkColor(m_pSkin->TreeBkColor);
	m_pIMTree->SetBkImage(m_pSkin->MainBkImg);
	//m_pIMTree->SetBgStretch(TRUE);

	TV_INSERTSTRUCT TreeCtrlItem;

	HTREEITEM hItem; 

	TreeCtrlItem.hParent = TVI_ROOT;
	TreeCtrlItem.hInsertAfter = TVI_LAST; //
	TreeCtrlItem.item.iImage  = 0;//
	TreeCtrlItem.item.iSelectedImage = 0;
	TreeCtrlItem.item.mask=TVIF_IMAGE|TVIF_SELECTEDIMAGE| TVIF_TEXT|TVIF_CHILDREN;
	TreeCtrlItem.item.pszText =_T("在线用户"); 
	hItem = m_pIMTree->InsertItem(&TreeCtrlItem);
	
	for (int xx = 0; xx < 5; xx ++)
	{
		TreeCtrlItem.hParent = hItem;
		TreeCtrlItem.hInsertAfter = TVI_LAST; //
		TreeCtrlItem.item.iImage  = 2;//
		TreeCtrlItem.item.iSelectedImage = 2;
		TreeCtrlItem.item.mask=TVIF_IMAGE|TVIF_SELECTEDIMAGE| TVIF_TEXT|TVIF_CHILDREN;
		TreeCtrlItem.item.pszText =_T("用户"); 
		m_pIMTree->InsertItem(&TreeCtrlItem);
	}

	m_pIMTree->Expand(hItem,TVE_EXPAND);

	TreeCtrlItem.hParent = TVI_ROOT;
	TreeCtrlItem.hInsertAfter = TVI_LAST; //
	TreeCtrlItem.item.iImage  = 1;//
	TreeCtrlItem.item.iSelectedImage = 1;
	TreeCtrlItem.item.mask=TVIF_IMAGE|TVIF_SELECTEDIMAGE| TVIF_TEXT|TVIF_CHILDREN;
	TreeCtrlItem.item.pszText =_T("离线用户"); 
	hItem = m_pIMTree->InsertItem(&TreeCtrlItem);
	
	for (xx = 0; xx < 5; xx ++)
	{
		TreeCtrlItem.hParent = hItem;
		TreeCtrlItem.hInsertAfter = TVI_LAST; //
		TreeCtrlItem.item.iImage  = 2;//
		TreeCtrlItem.item.iSelectedImage = 2;
		TreeCtrlItem.item.mask=TVIF_IMAGE|TVIF_SELECTEDIMAGE| TVIF_TEXT|TVIF_CHILDREN;
		TreeCtrlItem.item.pszText =_T("cicn"); 
		m_pIMTree->InsertItem(&TreeCtrlItem);
	}
	

	return 0;
}

void CIMainPanel::OnPaint() 
{
	CPaintDC dc(this); // device context for painting
	
	// TODO: Add your message handler code here
	
	// Do not call CWnd::OnPaint() for painting messages
	CRect rc;
	GetClientRect(&rc);
	dc.FillSolidRect(rc,RGB(255,255,255) );
}

void CIMainPanel::OnSize(UINT nType, int cx, int cy) 
{
	CWnd::OnSize(nType, cx, cy);
	
	// TODO: Add your message handler code here
	int iHeight;

	iHeight = m_pIMShortcutTool->GetClientHeight();

	m_pIMHeader->MoveWindow(CRect(0,0,cx,60),TRUE);
	m_pIMTree->MoveWindow(CRect(5, 60, cx, cy-iHeight),TRUE);
	m_pIMShortcutTool->MoveWindow(CRect(0, cy-iHeight, cx, cy),TRUE);
	
	
}
LRESULT CIMainPanel::OnShortcutMessage(WPARAM wParam, LPARAM lParam)
{
	// TODO: 处理用户自定义消息
	return 0;
}

⌨️ 快捷键说明

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