首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > WinCE >

WINCE 的ListView有关问题

2014-04-19 
WINCE 的ListView问题现在需要在显示内容的ListView的某列添加一个按钮,并添加这个按钮的点击事件。我需要

WINCE 的ListView问题
现在需要在显示内容的ListView的某列添加一个按钮,并添加这个按钮的点击事件。
我需要怎么做?
有现成的代码参考最好。
[解决办法]
例子你可以在http://www.codeproject.com/上找到。

简单处理是自绘,然后处理点击事件


//自绘NM_CUSTOMDRAW
void CXXXDlg::OnNMCustomdrawList(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMCUSTOMDRAW pNMCD = reinterpret_cast<LPNMCUSTOMDRAW>(pNMHDR);
*pResult = 0;

if ( CDDS_PREPAINT == pNMCD->dwDrawStage )
{
*pResult = CDRF_NOTIFYITEMDRAW;
}
else if ( CDDS_ITEMPREPAINT == pNMCD->dwDrawStage )
{
*pResult = CDRF_NOTIFYPOSTPAINT;
}
else if ( CDDS_ITEMPOSTPAINT == pNMCD->dwDrawStage )
{
//这里自己画一个按钮的样子
*pResult = CDRF_DODEFAULT;
}
}

//点击事件NM_CLICK
void CXXXDlg::OnNMClickList(NMHDR *pNMHDR, LRESULT *pResult)
{
NMLISTVIEW * pNMLV = reinterpret_cast<NMLISTVIEW *>(pNMHDR);
//根据pNMLV->iItem值自己写处理代码

*pResult = 0;
}

[解决办法]
我的建议是不要使用系统的控件,自己绘制,响应鼠标按下消息做处理

热点排行