Imaginez que j'ai un CDialog qui crée des contrôles dynamiquement lorsque l'utilisateur clique sur un bouton. Cela pourrait être comme ceci:Comment gérer les messages provenant de contrôles créés dynamiquement dans une application MFC?
// We don't know which is the first id for the new buttons until runtime (!)
MyDialog::MyDialog(/*whatever parameters needed*/, first_id)
: next_id_(first_id)
{ /*...*/ }
BOOL MyDialog::OnSomeButtonClicked()
{
CButton* new_button = new CButton;
new_button->Create("Caption", WS_CHILD | WS_VISIBLE, this->new_button_rect_,
this, this->next_id_++);
}
Puis ma question serait: Comment pourrais-je gérer les messages de ce bouton? Est-il possible d'utiliser la fonction de carte de message MFC?
La solution devrait fonctionner dans vs6 et vs2005.
Merci!
Ok, il est sans doute bon d'utiliser PreTranslateMessage pour ce genre de choses, mais je continue à se demander s'il y a un moyen d'utiliser l'installation de carte du message mfc: S –