CListCtrl-Zeiger zuweisen
-
Hallo,
Ich habe folgendes Problem.
In meiner Dialogklasse cInitialDlg erzeuge ich einen Zeiger auf ein ListCtrl.CListCtrl* pLC = (CListCtrl*) GetDlgItem(IDC_LIST1);
Dieser Zeiger pLC soll nun per Konstruktor an einen public Member m_pLC (mit NULL initialisiert) einer anderen Klasse cMyClass übergeben werden. Mit m_pLC wollte ich dann in cMyClass weiterarbeiten.
BOOL cInitialDlg::OnInitDialog() { CListCtrl* pLC = (CListCtrl*) GetDlgItem(IDC_LIST1); cMyClass* pMC = new cMyClass(pLC); ... delete pMC; }
(m_pLC ist public member von cMyClass!)
BOOL cMyClass::cMyClass(CListCtrl* pLC) { m_pLC = pLC; }
Leider bekomme ich einen unbehandelten Ausnahmefehler bei der Zuweisung
m_pLC = pLC;
Ich hoffe ich habe einigermassen verständlich geschrieben.
-
Sers,
wie deklarierst du m_pLC? (Mir würde sonst keine andere Fehlerquelle einfallen)
MfG
SaM
-
Sorry. Bischen spät die Antwort:
In cMyClass.h
class cMyClass { public: CListCtrl* m_pLC; ... };
Im Default-Konstruktor: m_pLC=NULL;
-
Versuch mal, den Zeiger nach cMyClass zu parsen, also:
m_pLC = (cMyClass*)pLC;
peace, sas
-
Macht man sowas nicht normalerweise per Class Wizard? Einfach ne member-Variable anlegen vom Typ "Control".