İleti Eşlemelerinin Bulunduğu Yer
Uygulama Sihirbazı ile yeni bir iskelet uygulama oluşturduğunuzda, Uygulama Sihirbazı sizin için oluşturduğu her komut hedefi sınıfı için bir ileti eşlemesi yazar. Bu türetilmiş uygulama, belge, görünüm ve çerçeve penceresi sınıflarınızı içerir. Bu ileti eşlemelerinden bazıları, belirli iletiler ve önceden tanımlanmış komutlar için Uygulama Sihirbazı tarafından sağlanan girdilere zaten sahiptir ve bazıları yalnızca ekleyeceğiniz işleyiciler için yer tutuculardır.
Sınıfın ileti eşlemesi içinde bulunur. sınıfı için CPP dosyası. Uygulama Sihirbazı'nın oluşturduğu temel iletiyle eşlenirken, her sınıfın işleyeceği iletiler ve komutlar için girdiler eklemek için Sınıf Sihirbazı'nı kullanırsınız. Bazı girdiler ekledikten sonra tipik bir ileti eşlemesi aşağıdaki gibi görünebilir:
BEGIN_MESSAGE_MAP(CMyView, CFormView)
ON_WM_MOUSEACTIVATE()
ON_COMMAND(ID_EDIT_CUT, &CMyView::OnEditCut)
ON_UPDATE_COMMAND_UI(ID_EDIT_CUT, &CMyView::OnUpdateEditCut)
ON_BN_CLICKED(IDC_MYBUTTON, &CMyView::OnBnClickedMybutton)
ON_WM_CREATE()
END_MESSAGE_MAP()
İleti eşlemesi bir makro koleksiyonundan oluşur. BEGIN_MESSAGE_MAP ve END_MESSAGE_MAP iki makro, ileti eşlemesini köşeli ayraç içine alır. gibi ON_COMMAND
diğer makrolar ileti eşlemesinin içeriğini doldurur.
Dekont
İleti eşleme makrolarını noktalı virgül takip etmemektedir.
Yeni bir sınıf oluşturmak için Sınıf Ekle sihirbazını kullandığınızda, sınıf için bir ileti eşlemesi sağlar. Alternatif olarak, kaynak kod düzenleyicisini kullanarak el ile bir ileti eşlemesi oluşturabilirsiniz.