mit einen Button einen Menue click auslösen



  • hoi ich bin ein vc++ newbie

    nun hab ich folgendes Problem:
    ich habe eine SDI Anwendung erstellt die mit mehren FormViews arbeitet. Diese kann ich auch Über die Menueleiste ansprechen - funzelt alles prima.
    ich möchte aber einige FormView's auch über normale Buttons ansprechen ...
    Hier schaffe ich es nicht diese Nachricht an CMainFrame zu übergeben kann mir da jemand mal nen Tip geben ist sicher ganz easy.... (ein neues Fenster soll nicht erzeugt werden - es muss nur irgendwie die nachricht nach CMainFrame geschickt werden)



  • Hi,

    der Code, der im Messagehandler für dein Menuitem steht, schreibst Du in eine neue selbstdefinierte Funktion. Von dem Menu-Messagehandler aus, rufst Du dann diese neue Funktion auf, die dann deinen gewünschten Code ausführt. Wenn Du nun irgendwo einen Button definierst, rufst Du in dessen Click-Eventhandler auch deine neue selbstdefinierte Funktion auf.
    Der Klick auf das Menuitem sowie der Klick auf den Button, müsste dann das gleiche Resultat erbringen.



  • Dnake für die hilfe, die idee hatte ich auch nur hatte ich probs bei der Verknüpfung mit dem CMainFrame

    nun klapps ...

    ka ob es wem hilft ^^ aber hier die entscheidende Verknüpfung

    ich habe den die Gemeinsame Member erstellt CMainFrame::OnFreeTest() und dann über meinen FormView mit folgendem Code Angesprochen

    void CMyView::OnButtonX() 
    {
    CMainFrame* pMainWnd = (CMainFrame*)AfxGetMainWnd(); 
    pMainWnd->OnFreeTest();
    
    }
    

Anmelden zum Antworten