Toolbar - benutzen



  • Und zwar ich hab in meinem Dialogfeld eine Toolbar eingebaut wie es im Faq steht, alles schön und gut aber wie spreche ich nun die einzelne knöpfe an also wie kann ich rausfinden ob der button gedrückt worden ist oder nicht



  • Hallo !

    Könnte so klappen:

    - jeder Button der Toolbar hat ja eine ID, z.B. IDC_START
    - in der Header-Klasse vom Dialog, in der die Toolbar ist, wird deine Message-Map deklariert (z.B. in CMainFrame). Da kannst du eine Funktion deklarieren, die bei einem Klick auf den Button ausgeführt wird, z.B. OnStart():

    //{{AFX_MSG(CMainFrame)
    afx_msg void OnStart(); // also den hier in der vorhandenen Message-Map eintragen
    //}}AFX_MSG
    DECLARE_MESSAGE_MAP()
    

    - in der Message-Map der cpp-Datei des Dialoges kannst du die ID mit der Funktion verknüpfen:

    BEGIN_MESSAGE_MAP(CMainFrame, CMDIFrameWnd)
    //{{AFX_MSG_MAP(CMainFrame)
    ON_COMMAND(IDC_START, OnStart)  // also den hier in der vorhandenen Message-Map eintragen
    //}}AFX_MSG_MAP
    END_MESSAGE_MAP()
    

    - Und jetzt fehlt noch die eigentliche Funktion OnStart(), also am Ende der cpp-Datei eintragen:

    void CMainFrame::OnStart() 
    {
        AfxMessageBox("Test");
    }
    

    Fertig.

    Tschüss



  • Jop Danke, ich habs nach 4 stündigen Nachdenken noch hinbekommen, aerb trotzdem danke. Ich habs nach dem gleichen Prinzip gemacht.


Anmelden zum Antworten