1

私はリスト ビューで遊んでいて、この投稿に出くわしました: CListCtrl の選択の変更を検出する方法は?

ただし、そこで使用されるコードには大きな流れがあり、複数選択では機能しません (そのスレッドで指摘されているように)。だから私の質問は、どうすれば複数選択でコードを機能させることができるでしょうか (たとえば、shift または ctrl による選択)?

4

2 に答える 2

0

OnItemChanged 通知が選択の変更によるものかどうかを確認するための便利な関数を作成しました。

BOOL IsItemSelChanged(NMLISTVIEW* pNMListView)
{
    // call this from your OnItemchangedMyListCtrl function in your dialog class

    if(!(pNMListView->uChanged & LVIF_STATE))
    {
        return(FALSE);
    }

    if((pNMListView->uOldState & LVIS_SELECTED) == (pNMListView->uNewState & LVIS_SELECTED))
    {
        return(FALSE);
    }

    return(TRUE);
}
于 2012-06-01T22:59:44.967 に答える