Message-Range und eine Funktion dazu?



  • Moin,
    bei mir verändert sich immer mein Menu.
    Nun muß ich aber auf alle Menu Messages reagieren.
    Im augenblick sieht das so aus:

    BEGIN_MESSAGE_MAP(CMyDialog, CDialog)
    	//{{AFX_MSG_MAP(CMyDialog)
    	ON_COMMAND(ID_TAB_SPZIFISCHERS_BEARBEITEN01,	OnEigenesMenuPunkt01)
    	ON_COMMAND(ID_TAB_SPZIFISCHERS_BEARBEITEN02,	OnEigenesMenuPunkt02)
    	ON_COMMAND(ID_TAB_SPZIFISCHERS_BEARBEITEN03,	OnEigenesMenuPunkt03)
    	ON_COMMAND(ID_TAB_SPZIFISCHERS_BEARBEITEN04,	OnEigenesMenuPunkt04)
    	ON_COMMAND(ID_TAB_SPZIFISCHERS_BEARBEITEN05,	OnEigenesMenuPunkt05)
    	ON_COMMAND(ID_TAB_SPZIFISCHERS_BEARBEITEN06,	OnEigenesMenuPunkt06)
    	ON_COMMAND(ID_TAB_SPZIFISCHERS_BEARBEITEN07,	OnEigenesMenuPunkt07)
    	ON_COMMAND(ID_TAB_SPZIFISCHERS_BEARBEITEN08,	OnEigenesMenuPunkt08)
    	ON_COMMAND(ID_TAB_SPZIFISCHERS_BEARBEITEN09,	OnEigenesMenuPunkt09)
    	ON_COMMAND(ID_TAB_SPZIFISCHERS_BEARBEITEN10,	OnEigenesMenuPunkt10)
    
    	ON_COMMAND(ID_TAB_SPZIFISCHERS_BEARBEITEN01,	OnEigenesMenuPunkt01)
    	ON_COMMAND(ID_TAB_SPZIFISCHERS_BEARBEITEN02,	OnEigenesMenuPunkt02)
    	ON_COMMAND(ID_TAB_SPZIFISCHERS_BEARBEITEN03,	OnEigenesMenuPunkt03)
    	ON_COMMAND(ID_TAB_SPZIFISCHERS_BEARBEITEN04,	OnEigenesMenuPunkt04)
    	ON_COMMAND(ID_TAB_SPZIFISCHERS_BEARBEITEN05,	OnEigenesMenuPunkt05)
    	ON_COMMAND(ID_TAB_SPZIFISCHERS_BEARBEITEN06,	OnEigenesMenuPunkt06)
    	ON_COMMAND(ID_TAB_SPZIFISCHERS_BEARBEITEN07,	OnEigenesMenuPunkt07)
    	ON_COMMAND(ID_TAB_SPZIFISCHERS_BEARBEITEN08,	OnEigenesMenuPunkt08)
    	ON_COMMAND(ID_TAB_SPZIFISCHERS_BEARBEITEN09,	OnEigenesMenuPunkt09)
    	ON_COMMAND(ID_TAB_SPZIFISCHERS_BEARBEITEN10,	OnEigenesMenuPunkt10)
    	//}}AFX_MSG_MAP
    END_MESSAGE_MAP()
    

    Was ich will ist ein Message Range. Und dann eine Funktion wo ich die Message ID übergeben bekomme. Wie schreib ich das in Code?

    So in etwas soll das sein:

    BEGIN_MESSAGE_MAP(CMyDialog, CDialog)
    	//{{AFX_MSG_MAP(CMyDialog)
    	ON_NOTIFY_EX_RANGE(ID_TAB_SPZIFISCHERS_BEARBEITEN01, ID_TAB_SPZIFISCHERS_BEARBEITEN10,	OnMenu)
    	//}}AFX_MSG_MAP
    END_MESSAGE_MAP()
    
    void OnMenu(UINT MessageID)
    {
    
    }
    

    ist das möglich?



  • Gibt es soetwas echt nicht?



  • Doch:

    afx_msg void	OnMyMessageRage(UINT nMessageID){};
    
    BEGIN_MESSAGE_MAP(CMyDlg, CDialog)
    	//{{AFX_MSG_MAP(CMyDlg, 
    	ON_COMMAND_RANGE(ID_START_ID, ID_END_ID, OnMyMessageRage)
    	//}}AFX_MSG_MAP
    END_MESSAGE_MAP()
    

Anmelden zum Antworten