在ListCtrl控件中設置自定義光標
::SetCursor(::LoadCursor (::AfxGetInstanceHandle(), MAKEINTRESOURCE(IDB_BMP_MOUSE)));
void CMyListCtrl::OnItemchanged(NMHDR* pNMHDR, LRESULT* pResult)
{
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*) pNMHDR;
int nRow = pNMListView-> iItem;
if((nRow == 2)||(nRow == 3))
{
// 發送消息,通知光標的重新設置
// 這里不知道怎么發送消息? message 參數不能為1吧?????
PostMessage(WM_SETCURSOR,0,1);
}
*pResult = 0;
}
// 設置光標
BOOL CMyListCtrl::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message)
{
// TODO: Add your message handler code here and/or call default
if(message == 1)
{
::SetCursor(LoadCursor(NULL, IDC_HAND));
return TRUE;
}
// 如果自定義光標,下面的必須去掉,否則,系統按照自定義的光標進行重繪,
// 設置不成功
//return CListCtrl::OnSetCursor(pWnd, nHitTest, message);
}