资源简介
MFC中如何使用子控件向父控件发送自定义消息
代码片段和文件信息
// MyListCtrl.cpp : 实现文件
//
#include “stdafx.h“
#include “任务管理器.h“
#include “MyListCtrl.h“
// CMyListCtrl
IMPLEMENT_DYNAMIC(CMyListCtrl CListCtrl)
CMyListCtrl::CMyListCtrl()
: m_nItem(0)
m_dwColCount(0)
m_dwItemCount(0)
{
}
CMyListCtrl::~CMyListCtrl()
{
}
BEGIN_MESSAGE_MAP(CMyListCtrl CListCtrl)
ON_NOTIFY_REFLECT(NM_CUSTOMDRAW &CMyListCtrl::OnNMCustomdraw)
ON_WM_RBUTTONDOWN()
ON_NOTIFY_REFLECT(NM_RCLICK &CMyListCtrl::OnNMRClick)
ON_COMMAND(ID_32778 &CMyListCtrl::MyProcessFlush)
ON_COMMAND(ID_32779 &CMyListCtrl::MyProcessModule)
ON_COMMAND(ID_32780 &CMyListCtrl::MyProcessThread)
ON_COMMAND(ID_32781 &CMyListCtrl::MyProcessKill)
ON_COMMAND(ID_32782 &CMyListCtrl::MyProcessOutFile)
END_MESSAGE_MAP()
// CMyListCtrl 消息处理程序
void CMyListCtrl::PreSubclassWindow()
{
SetExtendedstyle(GetExtendedstyle() | // 设置列表框属性第一列有Checkbox
LVS_EX_FULLROWSELECT | // 设置列样式表框属性可以选中整行
LVS_EX_GRIDLINES); // 设置列表框有表格样式
CListCtrl::PreSubclassWindow();
}
void CMyListCtrl::OnNMCustomdraw(NMHDR *pNMHDR LRESULT *pResult)
{
// NMLVCUSTOMDRAW* pNMCD = reinterpret_cast(pNMHDR);
// if (CDDS_PREPAINT == pNMCD->nmcd.dwDrawStage)
// {
// *pResult = CDRF_NOTIFYITEMDRAW; // 通知父窗口需要接收绘制列表框中每条记录前后的通告消息。
// }
// else
// {
// if (CDDS_ITEMPREPAINT == pNMCD->nmcd.dwDrawStage)
// {
// *pResult = CDRF_NOTIFYSUBITEMDRAW; // 通知父窗口需要接收绘制列表框每个子项的通告消息。
// }
// else if ((CDDS_ITEMPREPAINT | CDDS_SUBITEM) == pNMCD->nmcd.dwDrawStage)
// {
// int nItem = static_cast(pNMCD->nmcd.dwItemSpec); // 更新当前条目
// // pNMCD->iSubItem 即为当前条目的子项
// pNMCD->clrText = m_vecItemColor[nItem].clrtextColor;
// pNMCD->clrTextBk = m_vecItemColor[nItem].clrBkColor;
// *pResult = CDRF_DODEFAULT; // 通知控件自绘
// }
// }
}
void CMyListCtrl::InsertCol(DWORD dwCount ...)
{
va_list argptr;
va_start(argptr dwCount);
for (DWORD i = 0; i < dwCount; i++)
{
TCHAR* pStrTabName = va_arg(argptr TCHAR*);//列名
DWORD dwWidth = va_arg(argptr UINT); //列宽
InsertColumn(i pStrTabName 0 dwWidth);
// InsertColumn(i pStrTabName 0 dwWidth);
}
va_end(argptr);
m_dwColCount = dwCount;
}
void CMyListCtrl::InsertOnLineItem(DWORD dwCount ...)
{
va_list argptr;
va_start(argptr dwCount);
TCHAR* pStrItemName = va_arg(argptr TCHAR*);//第一列
InsertItem(m_dwItemCount pStrItemName);
for (DWORD i = 1; i < dwCount; i++)
{
TCHAR* pStrItemName = va_arg(argptr TCHAR*);//第n列
SetItemText(m_dwItemCount i pStrItemName);
}
va_end(argptr);
ITEM_COLOR stcInfo;
m_vecItemColor.push_back(stcInfo);
m_dwItemCount++;
}
void CMyListCtrl::SetItemColor(DWORD dwIndex
COLORREF clrTextColor
COLORREF clrBkColor)
{
m_vecItemColor[dwIndex].clrtextColor = clrTextColor;
m_vecItemColor[dwIndex].clrBkColor = clrBkColor;
}
void CMyListCtrl::OnRButtonDown(UINT nFlags CPoint point)
{
// TODO: 在
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 5713 2015-10-24 20:23 任务管理器 - bak03 可以右键 发送消息但还未处理\MyListCtrl.cpp
文件 1250 2015-10-24 19:50 任务管理器 - bak03 可以右键 发送消息但还未处理\MyListCtrl.h
文件 808 2015-10-24 14:48 任务管理器 - bak03 可以右键 发送消息但还未处理\MyStatusBar.cpp
文件 331 2015-10-24 14:48 任务管理器 - bak03 可以右键 发送消息但还未处理\MyStatusBar.h
文件 2085 2015-10-24 19:26 任务管理器 - bak03 可以右键 发送消息但还未处理\MyTabCtrl.cpp
文件 631 2015-10-24 19:16 任务管理器 - bak03 可以右键 发送消息但还未处理\MyTabCtrl.h
文件 7170 2015-10-24 20:32 任务管理器 - bak03 可以右键 发送消息但还未处理\ProcessDlg.cpp
文件 1217 2015-10-24 20:00 任务管理器 - bak03 可以右键 发送消息但还未处理\ProcessDlg.h
文件 9545 2015-10-23 20:17 任务管理器 - bak03 可以右键 发送消息但还未处理\ProcMgr.cpp
文件 2514 2015-10-24 11:05 任务管理器 - bak03 可以右键 发送消息但还未处理\ProcMgr.h
文件 1753 2015-10-23 20:44 任务管理器 - bak03 可以右键 发送消息但还未处理\ProgramDlg.cpp
文件 563 2015-10-23 16:18 任务管理器 - bak03 可以右键 发送消息但还未处理\ProgramDlg.h
文件 4175 2015-10-23 10:02 任务管理器 - bak03 可以右键 发送消息但还未处理\ReadMe.txt
文件 4286 2015-10-23 10:58 任务管理器 - bak03 可以右键 发送消息但还未处理\res\favicon.ico
文件 10134 2013-07-22 01:18 任务管理器 - bak03 可以右键 发送消息但还未处理\res\icon1.ico
文件 660 2015-10-23 10:02 任务管理器 - bak03 可以右键 发送消息但还未处理\res\My.rc2
文件 238 2015-10-23 10:23 任务管理器 - bak03 可以右键 发送消息但还未处理\res\toolbar1.bmp
文件 238 2015-10-23 10:23 任务管理器 - bak03 可以右键 发送消息但还未处理\res\toolbar2.bmp
文件 67777 2013-07-22 01:18 任务管理器 - bak03 可以右键 发送消息但还未处理\res\任务管理器.ico
文件 4188 2015-10-24 18:38 任务管理器 - bak03 可以右键 发送消息但还未处理\resource.h
文件 143 2015-10-23 10:02 任务管理器 - bak03 可以右键 发送消息但还未处理\stdafx.cpp
文件 2073 2015-10-24 19:57 任务管理器 - bak03 可以右键 发送消息但还未处理\stdafx.h
文件 234 2015-10-23 10:02 任务管理器 - bak03 可以右键 发送消息但还未处理\targetver.h
文件 116644 2015-10-24 20:16 任务管理器 - bak03 可以右键 发送消息但还未处理\任务管理器.aps
文件 2426 2015-10-23 10:02 任务管理器 - bak03 可以右键 发送消息但还未处理\任务管理器.cpp
文件 467 2015-10-23 10:02 任务管理器 - bak03 可以右键 发送消息但还未处理\任务管理器.h
..A..H. 28 2015-10-24 07:52 任务管理器 - bak03 可以右键 发送消息但还未处理\任务管理器.opensdf
文件 16134 2015-10-24 20:16 任务管理器 - bak03 可以右键 发送消息但还未处理\任务管理器.rc
文件 11264 2015-10-24 20:23 任务管理器 - bak03 可以右键 发送消息但还未处理\任务管理器.v12.suo
文件 6872 2015-10-24 14:46 任务管理器 - bak03 可以右键 发送消息但还未处理\任务管理器.vcxproj
............此处省略13个文件信息
- 上一篇:CYK算法的C++实现
- 下一篇:mfc 实现图片的移动 火箭移动效果
相关资源
- mfc 实现图片的移动 火箭移动效果
- MFC基于TCP/IP协议的聊天室源代码 (继
- mfc高通滤波器
- MFC对EXCEL的操作:修改单元格格式,背
- MFC的一个很强大的LIstCtrl类很漂亮,类
- MFCC参数提取的matlab实现
- 基于udp的P2P聊天工具MFC实现
- 基于MFC的连接数据库的书店管理系统
- VS2013 MFC ODBC连接SQL SERVER数据库编程完
-
MFC ba
se64编码/解码工具 - mstcpip头文件
- 自己写的一个MFC画线程序,可以设置
- VS2012+MFC串口通信
- mfc模拟电梯运行程序
- MFC滚动条,方便学习使用
- vc++ 运用MFC实现基于AfxMessageBox的 自定
- 停车场管理系统MFC
- ATL 封装MFC对话框
- mfc学生管理系统112034
- MFC编写的五子棋程序源代码
- MFC实现的全国各个城市的最短路径查
- 双三次B样条曲面算法 计算机图形学
- mfc视图区域嵌入嵌入外部exe(窗口程
- C++ 网络聊天室设计报告及主要源程序
- MFC下Bezier曲线的绘制
- mfc获取mac地址的小程序
- Bezier曲线MFC实现源代码
- MFC42D.DLL MFCO42D.DLL MSVCRTD.DLL
- vs2010 MFC tabctrl控件重载, 实现标签加
- 进程调度的设计与实现图形界面c++
评论
共有 条评论