Child-Dialog Variablen mit übergeben???



  • Hallo 🙂 ,

    ich baue gerade ein Programm mit einem Hauptdialog. Klickt man auf einen entsprechnenden Button wird ein Child-Dialog erstellt mit (CreateWindow(...)).

    Ich habe nun ein paar Variablen-also eine Klasse, die ich dem Child-Fenster übergeben möchte, ich weiß nur nicht wie ich das ohne globale Variablen zu benutzen, hinkriegen soll.

    Auf globale Variablen möchte ich verzichten.

    Ich habe eine CallBack-Funktion vom Child-Fenster.
    Ich habe in der CallBack-Funktion vom Child-Fenster die Klasse neu erstellt, was aber ja keinen Sinn macht, denn dann sind die Variablen der Klasse nicht beschrieben.

    Kann mir jemand helfen?



  • Schau dir mal den letzten Parameter von CreateWindow an (LPVOID lpParam).



  • super!!!!!!!!!

    *freu*

    ich hab's hinbekommen mit Deinem Tipp!

    Ich habe meine Klasse mit CreateWindow übergeben (im letzten Parameter)

    CreateWindow(_T("xxx"),_T("Historie"), WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_MINIMIZEBOX | WS_POPUP, iBreite/4, (iHoehe - 550)/2,730,550,hWnd,NULL, hInstance, &MainPoints/* ->meine Klasse*/);

    In der CallBack vom Child-Dialog:

    CMainPoints *Cache;
    static CMainPoints CMainPoints;

    ...
    und dann in WM_CREATE: in der Child-Callback;

    Cache= (CMainPoints*) (((LPCREATESTRUCT) lParam)->lpCreateParams);
    MainPoints = *Cache;

    Geil, DANKE 😃


Anmelden zum Antworten