从获取列表视图控件复选框通知code [英] Get the notification code from Listview Control checkboxes

查看:221
本文介绍了从获取列表视图控件复选框通知code的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经实现了一个ListView控件与 LVS_EX_CHECKBOXES | LVS_EX_INFOTIP 的风格。我已经注册的函数来获取从列表视图控件的项目使用的通知。

I've implemented a ListView control with LVS_EX_CHECKBOXES | LVS_EX_INFOTIP style. I've registered function to get notified from list view control items using.

BEGIN_MESSAGE_MAP(Class, ParentClass)
ON_NOTIFY(LVN_GETINFOTIP,IDC_LIST2,OnClickCheckBox)
END_MESSAGE_MAP()

我的问题是,什么时候通知你选择/取消选择在ListView控件的项目的复选框code将被发送到父..

My question is, what notification code will be sent to parent when you select/de-select the checkbox in the item of ListView control..

写入什么code需要处理的OnClickCheckBox()函数复选框选择?

What code need to be written to handle checkbox selection in the OnClickCheckBox() function ?

请帮我

推荐答案

您获得该项目改变的消息,你必须搞清楚,如果该复选框状态已经改变。

You get the item-changed-message and you have to find out, if the checkbox-state has been changed.

在消息映射:

ON_NOTIFY_REFLECT(LVN_ITEMCHANGED,&安培; CMyListView :: OnLvnItemchanged)

事件处理程序:

void CMyListView::OnLvnItemchanged(NMHDR *pNMHDR, LRESULT *pResult)
{
    LPNMLISTVIEW pNMLV = reinterpret_cast<LPNMLISTVIEW>(pNMHDR);

    if(pNMLV->uNewState == 8192) // Item checked
    {
        ...
    }
    else if(pNMLV->uNewState == 4096) // Item unchecked
    {
        ...
    }

    *pResult = 0;
}

这篇关于从获取列表视图控件复选框通知code的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆