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

📄 engclasslist.cpp

📁 vc 和mapobjects地理信息系统组件开发 很有启发意义和参考价值
💻 CPP
字号:
// EngClassList.cpp : implementation file
//

#include "stdafx.h"
#include "EngClassList.h"

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

/////////////////////////////////////////////////////////////////////////////
// CEngClassList

CEngClassList::CEngClassList()
{
}

CEngClassList::~CEngClassList()
{
}


BEGIN_MESSAGE_MAP(CEngClassList, CListCtrl)
	//{{AFX_MSG_MAP(CEngClassList)
	ON_WM_PAINT()
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CEngClassList message handlers

void CEngClassList::OnPaint() 
{
	CPaintDC dc(this); // device context for painting
	
	int w=GetColumnWidth(0);
	int w1=GetColumnWidth(1);
	int i,count=GetItemCount();
	CRect rect;
	CString s;
	TCHAR szText[256];

	CFont *font=GetFont();
	CFont *oldFont=dc.SelectObject(font);
	CBrush brush;
	CBrush *oldBrush=dc.GetCurrentBrush();
	long color;
	for(i=0;i<count;i++)
	{
		GetItemRect(i,&rect,LVIR_BOUNDS);
		rect.left=3;
		rect.right=w-3;
		rect.top+=1;
		rect.bottom-=1;
		color=GetItemData(i);
		brush.CreateSolidBrush(color);
		dc.SelectObject(&brush);
		dc.Rectangle(rect);
		dc.SelectObject(oldBrush);
		brush.DeleteObject();
		
		GetItemText(i,1,szText,256);
		rect.left=w;
		rect.right=w+w1;
		s=szText;
		dc.TextOut(w+4,rect.top,s);
	}

	dc.SelectObject(oldFont);

	// Do not call CListCtrl::OnPaint() for painting messages
}

BOOL CEngClassList::InsertItemEx(long &index,COLORREF color)
{
	if(index==-1)
	{
		//最后
		int count=GetItemCount();
		index=InsertItem(count,"0");
		SetItemData(count,color);
	}
	else
	{
		//指定位置
	}

	return TRUE;
}

⌨️ 快捷键说明

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