1.Subclass CCheckListBox. 2.Overload WM_LBUTTONDOWN message in the subclass CCheckListBox. 3.Check the mouse clicking position.
ON_CLBN_CHKCHANGE The user has changed the state of an item's checkbox. ON_LBN_SELCHANGE The selection in the list box is about to change. This notification is not sent if the selection is changed by the CListBox::SetCurSel member function. This notification applies only to a list box that has the LBS_NOTIFY style. The LBN_SELCHANGE notification message is sent for a multiple-selection list box whenever the user presses an arrow key, even if the selection does not change.
2.Overload WM_LBUTTONDOWN message in the subclass CCheckListBox.
3.Check the mouse clicking position.
ON_LBN_SELCHANGE The selection in the list box is about to change. This notification is not sent if the selection is changed by the CListBox::SetCurSel member function. This notification applies only to a list box that has the LBS_NOTIFY style. The LBN_SELCHANGE notification message is sent for a multiple-selection list box whenever the user presses an arrow key, even if the selection does not change.