PanicMan Geschrieben 8. April 2002 Geschrieben 8. April 2002 Hallo! Ich habe eine CListCtrl in meinem Dialog. Die membercontrolvariable heißt m_Liste. wenn ich jetzt mit m_Liste.InsertColumn(0,"TEXT",LVCFMT_LEFT,30,-1); mehrere Spalten erstelle, ist alles OK. Sobald ich aber mit m_Liste.InsertItem(0,"erstes Item",0); m_Liste.SetItemText(0,1,"erstes item 2 Spalte"); was in die Liste einfügen will, kriege ich ein Debug Assertion Failed! Error, aber nicht auf den Insert-Zeilen, sondern in der WinCtrl2.cpp, Linie 547. Dort steht folgendes : void CListCtrl: :DrawItem(LPDRAWITEMSTRUCT) { ASSERT(FALSE); //Hier bleibt er stehen } Wo ist das Problem? Muss ich irgendwie speicher reservieren oder sowas?? THX Zitieren
Klotzkopp Geschrieben 8. April 2002 Geschrieben 8. April 2002 Es gibt eine Beziehung zwischen dem letzten Parameter von InsertColumn und dem zweiten von SetItemText. Wenn Du die Spalte nicht mit einem SubItem verknüpfst, dann kannst Du auch keinen SubItem-Text setzen. Zitieren
PanicMan Geschrieben 8. April 2002 Autor Geschrieben 8. April 2002 Und wie muß ich es dann machen? irgendein beißpiel? Zitieren
Klotzkopp Geschrieben 8. April 2002 Geschrieben 8. April 2002 Gib als letzten Parameter bei InsertColumn eben nicht -1 an, sondern nacheinander 0, 1, 2 usw. Zitieren
PanicMan Geschrieben 9. April 2002 Autor Geschrieben 9. April 2002 Super, das war das richtige, danke!! Nur habe ich jetzt ein problem, das er nur die erste spalte markiert, wenn ich einen eintrag selektiere... wie mache ich, das er die ganze zeile markiert? Zitieren
Klotzkopp Geschrieben 9. April 2002 Geschrieben 9. April 2002 m_Liste.SetExtendedStyle( m_Liste.GetExtendedStyle() | LVS_EX_FULLROWSELECT ); Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.