welche notification bei einer CListCtrl brauche ich um..



  • bei einem CLick auf das Item den Item text zu bekommen.

    die Prozedur hab ich nur den aufruf kapier ich nicht.

    mit LVN_ITEMCHANGED bekomm ich 3xeine notfication....
    ich möchte die aber nur einmal haben enn der benutzer auf ein item clickt...
    😕
    habt ihr ne ahnung?



  • [msdn]NM_CLICK (list view) Notification[/msdn]



  • geschickt wenn man auch nur so in die List clickt....
    :-\#

    trotzdem danke



  • und wo ist das Problem? Ist es schwer zu überprüfen, ob iItem Member der NMITEMACTIVATE Struktur -1 ist oder nicht?



  • iItem auf -1 prüfen reicht nicht ganz, dann kommen immer noch 2 Nachrichten
    pro ItemChange an.
    Besser gleich auf uNewState != 0 checken, dann kriegst Du allein die letzte Nachricht mit dem neuen iItem drin, wenn ich Dich richtig verstehe willst Du ja nur die. Ungefähr so:

    void CMyDlg::OnItemChangedMyList(NMHDR* pNMHDR, LRESULT* pResult) 
    {
    	LPNMLISTVIEW pNMLV = reinterpret_cast<LPNMLISTVIEW>(pNMHDR);
    	if (pNMLV->uNewState != 0)
    	{
    		m_iNewPos = pNMLV->iItem; //Oder Dein Code...
    	}
    	*pResult = 0;
    }
    

    Bei mir klappt's so 🙂


Anmelden zum Antworten