wie heißt dieses event???



  • hi all!

    Ich habe 3 property pages, und will eine funktion aufrufen bei jedem erscheinen einer page(sagen wir mal der 2.) mit OnInitDialog wird die nur einmal aufgerufen....

    wie heißt denn der richtige event???

    danke l00P



  • OnSetActive()



  • danke 🙂



  • Bitte 😃



  • ...da war ich voreilig 🙂 Dieses event finde ich nicht, wo ist das zu finden??? danke!



  • Wo der Assistent das Ding versteckt hat finde ich jetzt auch nicht...
    Kannst aber mal das probieren:
    - in der Headerdatei von einem PropertyPage unter protected das hier einfügen:

    virtual BOOL OnSetActive();
    

    - in der cpp das hier einfügen:

    BOOL CNameVonDeinerKlasse::OnSetActive()
    {
    	// hier der Code, der beim Aufrufen der Page ausgeführt werden soll
    
    	return CPropertyPage :: OnSetActive();
    }
    

    - CNameVonDeinerKlasse musst du natürlich anpassen



  • geht irgendwie nicht, hängt sich auf wenn ich die page öffnen will...



  • Dein Rückgabewert in OnSetActive() ist bestimmt

    return CNameDeinerEigenenKlasse :: OnSetActive();
    

    Es muss aber

    return CPropertyPage :: OnSetActive();
    

    sein !



  • ...so hast du´s ja aufgeschrieben, geht aber nicht, kann das daran liegen das kein Eintrag in der message Map steht???

    lg



  • Nö, genau so, wie da oben beschrieben, das reicht.
    Ist es denn vorher gelaufen ?
    Du hast nur die Zeilen (wie da oben beschrieben) hinzugefügt und jetzt hängt es sich auf ? Kann ich ja gar nicht glauben...
    Hast du da noch eigenen Code mit rein gepackt, der sich evtl. aufhängt ?
    Pack doch nur mal eine MessageBox in OnSetActive(), dann siehst du, ob die ausgeführt wird oder nicht.

    [edit]
    Übrigens:
    falls du so ein fertiges "Registerkarten-Steuerelement" auf einen Dialog eingefügt hast:
    da kenne ich mich nicht so aus. Könnte sein, dass das da irgendwie anders geht.
    Ich rede hier von verschiedenen, extra einzeln erstellten Dialogen, die als PropertyPage von einem PropertySheet als Registerkarten angezeigt werden.
    Wollte ich nur mal klar stellen, nicht das wir hier von zwei verschiedenen Sachen reden...
    [/edit]



  • die seite wird gar nicht angezeigt, hängt schon wenn ich auf den "Property Reiter" klicke, der code der drinnensteht, funkt in einer anderen funktion aber....



  • Dann klick mal im Menü auf
    Erstellen -> Bereinigen
    und dann auf
    Erstellen -> Alles neu erstellen
    Durch das Hinzufügen von den drei Zeilen, die einfach nur eine leere Funktion sind, stürzt doch ein Programm nicht ab...
    ...normalerweise 😃 ...



  • ja jetzt gehts auf einmal, frag mich aber nicht warum 😃

    danke auf jeden fall...

    lg l00P


Log in to reply