Fehler bei CListCtrl::InsertItem im zusammenhang mit ::SetItemData
-
Bei mir geht CListCtrl::InsertItem und auch CListCtrl::SetItemData.
Aber wenn ich erst InsertItem und darauf hin SetItemData benutze, stürtzt alles ab.
Muss ich da noch ein Flush, UpdateData(false) oder ähnliches ausführen?
Oder habe ich irgenwas falsch eingestellt, so dass ich einem Item keine Daten zuweisen kann?Mein Code:
m_CtrlList.SetExtendedStyle( LVS_EX_FULLROWSELECT);
...
int nTemp = m_CtrlList.InsertItem(0, "1", 0);
m_CtrlList.SetItemData(nTemp, 1); //<- hier stürtzt alles ab[ Dieser Beitrag wurde am 29.10.2002 um 09:55 Uhr von Xtreaft editiert. ]
-
Ach irgenwas stimmt mit dem List Control nicht so ganz, da es auch abstürtzt wenn ich:
CListCtrl::InsertItem(0, "1", 0);
CListCtrl::SetSelectionMark(0);
CListCtrl::SetItemState(0, LVIS_SELECTED|LVIS_FOCUSED, LVIS_SELECTED|LVIS_FOCUSED); <- nun stürtzt das programm hier abBenutze ich InsertItem falsch? Ich weiss auch nicht weiter. Gibt es niemanden der das schon mal hatte?
[ Dieser Beitrag wurde am 29.10.2002 um 10:38 Uhr von Xtreaft editiert. ]
-
hast du dein ListCtrl mit einer imagelist verbunden?
-
Hm ne hatte ein cs value auf das List Control, dies hat es wohl einwenig verwirrt. Komischer Fehler war nicht leicht zu finden.
-
was ist "ein cs value auf das List Control" ?
-
CString csListControl;
DDX_CBString(pDX, IDC_LISTCONTROL, m_csListControl);
csListControl <- ein cs value auf das List Control.Ist falsch ausgedrückt?! Wie heisst denn das richtig?
-
ahso.
dann wundert es mich aber, dass du keinen kompilerfehler bekommen hast ... oder hast du mit zeigern gearbeitet?
-
P.S. Die Namen für Befehle/Makros haben eine gewisse Bedeutung, so bedeutet HMENU = Handle auf Menü, HWND = Handle auf Window u.s.w.
DDX_CBString bedeutet also: 'DDX' = Dynamic Data Exchange to 'CB' = Combobox from 'String' = CString
Jetzt die Frage: WAS hat eine Combobox mit Deinem ListCtrl gemeinsam?