Probleme mit List Control
-
Hallo,
ich lese verschiedene Daten in eine Liste ein. Nun möchte ich die markierte Zeile zurückgeben lassen. Komischerweise muss ich immer 2 mal auf die Zeile klicken, dass der Rückgabewert der markierten Zeile entspricht. Weiß jemand wo da das Problem liegt?
void CMy3DBlurayConvertDlg::CListCtrl_TrackList(NMHDR *pNMHDR, LRESULT *pResult) { int i = m_Track_List.GetSelectionMark(); CString out; out.Format(_T("%d"),i); m_video_output.SetWindowTextW(out); }
-
neue Erkenntisse:
wenn noch keine Zeile markiert ist, dann geht es direkt. Sobald bereits eine Zeile markiert ist, ist der Rückgabewert immer die Zeile, die VORHER markiert war. Also hinkt er hier immer einen schritt hinterher.
hat wirklich niemand eine idee?
-
Was für eine Notification benutzt Du denn?
-
Danke für den Denkanstoß, hab von LVN_ITEMCHANGED auf NM_CLICK umgestellt, jetzt geht es!
-
Ist Dir klar Das LVN_ITEMCHANGED auch kommt wenn beim alte Item die Selektion aufgehoben wird.
Grundsätzlich wird "item changed" gesendet, wenn sich eben "irgendwas ändert"!