读书人

WINCE 的ListView有关问题

发布时间: 2014-04-19 16:42:03 作者: rapoo

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;
}

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

读书人网 >WinCE

热点推荐