mylistbox.cpp

来自「MFC 函数实用手册 MFC 函数实用手册」· C++ 代码 · 共 80 行

CPP
80
字号
// MyListBox.cpp : 实现文件
//

#include "stdafx.h"
#include "BackGroupListBox.h"
#include "MyListBox.h"


// MyListBox

IMPLEMENT_DYNAMIC(MyListBox, CListBox)

MyListBox::MyListBox()
{
	m_brush.CreateStockObject(HOLLOW_BRUSH);
}

MyListBox::~MyListBox()
{
}


BEGIN_MESSAGE_MAP(MyListBox, CListBox)
	ON_CONTROL_REFLECT(LBN_SELCHANGE, OnLbnSelchange)
	ON_WM_CTLCOLOR_REFLECT()
	ON_WM_ERASEBKGND()
	ON_WM_LBUTTONDOWN()
	ON_WM_VSCROLL()
END_MESSAGE_MAP()



// MyListBox 消息处理程序


void MyListBox::OnLbnSelchange()
{
	Invalidate();
	// TODO: 在此添加控件通知处理程序代码
}

HBRUSH MyListBox::CtlColor(CDC* pDC, UINT nCtlColor)
{
	// TODO:  在此更改 DC 的任何属性

	// TODO:  如果不应调用父级的处理程序,则返回非空画笔
	pDC->SetBkMode(TRANSPARENT);
	pDC->SetTextColor(RGB(255,0,255));
	return m_brush;
}

BOOL MyListBox::OnEraseBkgnd(CDC* pDC)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值

	BITMAP bminfo;
	m_bmp.GetBitmap(&bminfo);
	m_curbmp = &m_bmp;
	CDC memDC;
	memDC.CreateCompatibleDC(pDC);
	memDC.SelectObject(m_curbmp);
	pDC->BitBlt(0,0,bminfo.bmWidth,bminfo.bmHeight,&memDC,0,0,SRCCOPY);

	return CListBox::OnEraseBkgnd(pDC);
}

void MyListBox::OnLButtonDown(UINT nFlags, CPoint point)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	Invalidate();
	CListBox::OnLButtonDown(nFlags, point);
}

void MyListBox::OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	Invalidate();
	CListBox::OnVScroll(nSBCode, nPos, pScrollBar);
}

⌨️ 快捷键说明

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