资源简介
可编辑的CListctrl 支持CEDIT文本框,COMBOBOX组合框,CSTATIC,CDateTimeCtrl,CList等。
源码+测试程序。使用时#include "ListCtrlEditable.h"即可。
欢迎指教。
源码+测试程序。使用时#include "ListCtrlEditable.h"即可。
欢迎指教。
代码片段和文件信息
// ListCtrlEditable.cpp : 实现文件
//
#include “stdafx.h“
#include “ListCtrlEx.h“
#include “ListCtrlEditable.h“
#include “.\listctrleditable.h“
// CComboxNoBorder
IMPLEMENT_DYNAMIC(CComboxNoBorder CComboBox)
CComboxNoBorder::CComboxNoBorder()
{
}
CComboxNoBorder::~CComboxNoBorder()
{
}
BEGIN_MESSAGE_MAP(CComboxNoBorder CComboBox)
//ON_WM_PAINT()
ON_WM_CTLCOLOR()
ON_WM_SHOWWINDOW()
END_MESSAGE_MAP()
// CComboxNoBorder 消息处理程序
void CComboxNoBorder::OnPaint()
{
CPaintDC dc(this); // device context for painting
}
HBRUSH CComboxNoBorder::OnCtlColor(CDC* pDC CWnd* pWnd UINT nCtlColor)
{
CRect rc;
if (nCtlColor == CTLCOLOR_EDIT)
{
CEdit *pEdit = (CEdit*)pWnd;
if (pEdit)
{
GetClientRect(&rc);
rc.right -= GetSystemMetrics(SM_CXVSCROLL) + 2;
pEdit->MoveWindow(&rc);
pEdit->GetClientRect(&rc);
pEdit->SetRect(&rc);
}
}
HBRUSH hbr = CComboBox::OnCtlColor(pDC pWnd nCtlColor);
return hbr;
}
void CComboxNoBorder::OnShowWindow(BOOL bShow UINT nStatus)
{
if (bShow)
{
LOGFONT lf;
GetFont()->GetLogFont(&lf);
SendMessage(CB_SETITEMHEIGHT -1 abs(lf.lfHeight));
}
CComboBox::OnShowWindow(bShow nStatus);
}
////////////////////////////////////////////////////////////////////////////////////
// CListCtrlEditable
IMPLEMENT_DYNAMIC(CListCtrlEditable CListCtrl)
CListCtrlEditable::CListCtrlEditable()
{
}
CListCtrlEditable::~CListCtrlEditable()
{
}
BEGIN_MESSAGE_MAP(CListCtrlEditable CListCtrl)
ON_WM_CREATE()
ON_NOTIFY_REFLECT(LVN_ITEMCHANGED OnLvnItemchanged)
ON_NOTIFY_REFLECT(NM_DBLCLK OnNMDblclk)
ON_EN_KILLFOCUS(501 OnCtrlKillFocus)
ON_CBN_KILLFOCUS(502 OnCtrlKillFocus)
ON_LBN_KILLFOCUS(503 OnCtrlKillFocus)
ON_NOTIFY(NM_KILLFOCUS 504 OnCtrlKillFocus)
END_MESSAGE_MAP()
// CListCtrlEditable 消息处理程序
BOOL CListCtrlEditable::PreCreateWindow(CREATESTRUCT& cs)
{
//cs.dwExstyle |= LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES;
return CListCtrl::PreCreateWindow(cs);
}
int CListCtrlEditable::InsertColumn(int nCol LPCTSTR lpszColumnHeading ControlType ctrltype DWORD style bool bEditable int nFormat int nWidth1 int nSubItem)
{
int ival = CListCtrl::InsertColumn(nCol lpszColumnHeading nFormat nWidth1 nSubItem);
if (ival != -1)
m_ctMap.insert(std::pair((int)m_ctMap.size() CColumType(nCol nSubItem ctrltype style bEditable this)));
return ival;
}
CWnd* CListCtrlEditable::GetColumControl(int col /* = -1 */ int subitem /* = -1 */)
{
CWnd *pwnd = NULL;
for (int i = 0; i < (int)m_ctMap.size(); i++)
{
CColumType &ct = m_ctMap[i];
if (ct.iCol == col && ct.iSubItem == subitem)
{
pwnd = ct.pCtrlWnd;
break;
}
}
return pwnd;
}
void CListCtrlEditable::SetColumCtrlText(CWnd *pColumCtrl)
{
if (pColumCtrl)
{
for (int i = 0; i < (int)m_ctMap.size(); i++)
{
CColumType &ct = m_ctMap[i];
if (ct.pCtrlWnd == pColumCtrl)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 184320 2011-09-14 16:05 ListCtrlEx\ListCtrlEx\Debug\ListCtrlEx.exe
目录 0 2011-09-14 16:06 ListCtrlEx\ListCtrlEx\Debug
文件 7617 2011-09-14 15:44 ListCtrlEx\ListCtrlEx\ListCtrlEditable.cpp
文件 5579 2011-09-14 15:52 ListCtrlEx\ListCtrlEx\ListCtrlEditable.h
文件 58340 2011-09-14 15:37 ListCtrlEx\ListCtrlEx\ListCtrlEx.aps
文件 1504 2011-09-13 09:09 ListCtrlEx\ListCtrlEx\ListCtrlEx.cpp
文件 461 2011-09-13 09:09 ListCtrlEx\ListCtrlEx\ListCtrlEx.h
文件 5068 2011-09-14 15:37 ListCtrlEx\ListCtrlEx\ListCtrlEx.rc
文件 4875 2011-09-13 09:44 ListCtrlEx\ListCtrlEx\ListCtrlEx.vcproj
文件 4375 2011-09-14 15:30 ListCtrlEx\ListCtrlEx\ListCtrlExDlg.cpp
文件 661 2011-09-14 15:30 ListCtrlEx\ListCtrlEx\ListCtrlExDlg.h
文件 2868 2011-09-13 09:09 ListCtrlEx\ListCtrlEx\ReadMe.txt
文件 21630 2003-04-01 19:36 ListCtrlEx\ListCtrlEx\res\ListCtrlEx.ico
文件 699 2011-09-13 09:09 ListCtrlEx\ListCtrlEx\res\ListCtrlEx.manifest
文件 366 2011-09-13 09:09 ListCtrlEx\ListCtrlEx\res\ListCtrlEx.rc2
目录 0 2011-09-13 09:09 ListCtrlEx\ListCtrlEx\res
文件 682 2011-09-14 15:37 ListCtrlEx\ListCtrlEx\resource.h
文件 139 2011-09-13 09:09 ListCtrlEx\ListCtrlEx\stdafx.cpp
文件 1458 2011-09-13 15:16 ListCtrlEx\ListCtrlEx\stdafx.h
目录 0 2011-09-14 15:52 ListCtrlEx\ListCtrlEx
文件 920 2011-09-13 09:09 ListCtrlEx\ListCtrlEx.sln
..A..H. 10240 2011-09-14 16:06 ListCtrlEx\ListCtrlEx.suo
目录 0 2011-09-14 16:06 ListCtrlEx
----------- --------- ---------- ----- ----
311802 23
相关资源
- 网络(UDP)转串口程序
- DICOM图像读取以及窗宽,窗位调整
- OPC插件OPC Core Components 2.00 SDK 2.20
- DICOM文件读取程序
- 经典的Viterbi算法
- 《Visual Basic 串口通信与测控应用技术
- PB读地秤的COM
- SSCOM32
- Element_Components_v2.1.0.rplib
- HslCommunication 7.0.1 免费版本 免费使用
- broadcom phy BCM5482S datasheet(开发用)
- Indentification of Interface Blocker to the LA
-
notepad++ 对比插件 xm
l格式化插件 - CommVault为番禺中心医院新医改护航
- Dr.COM宽带计费运营解决方案助力广电
- Simulation of Active Heave Compensation System
- 基于ISCOM系列以太网交换机宽带接入方
- ISCOM系列以太网交换机宽带接入方案
- 串口模拟器支持win10
- 华为3Com助力福建省数字林业存储备份
- Polarization Optics in Telecommunication
-
Hollow fibre ba
sed Liquid-liquid-liquid mic - bcm5482 datasheet
- network science Albert-László Barabási
- Investigation of the Absorption Mechanism of G
- broadcom 802.11g 网络适配器驱动程序 v
- 易语言COM组件支持模块全套源码
- ArangoDB vs. JanusGraph vs. Neo4j vs. OrientDB
- 复旦dc综合工具教程
- Comparison between one-dimensional time-depend
评论
共有 条评论