Alt pencere yordamı yazma

Kare pencere yordamı gibi bir MDI alt penceresi yordamı özel bir işlevi varsayılan olarak iletileri işlemek için kullanır. Tüm iletileri işleyen çocuk pencere yordamı değil, DefWindowProc işlevini yerine DefMDIChildProc işlevini geçirilmelidir. Ayrıca, uygulamanın düzgün çalışması MDI amacıyla ileti işleme bile DefMDIChildProciçin bazı pencere yönetim iletileri geçirilmelidir. Aşağıdaki uygulama DefMDIChildProc için geçmesi gereken mesajlardır.

İleti Yanıt
WM_CHILDACTIVATE MDI alt pencereleri büyüklüğünde, taşındığında veya görüntülenen etkinleştirme işleme gerçekleştirir. Bu ileti geçirilmelidir.
WM_GETMINMAXINFO MDI İstemcisi penceresinde geçerli boyutuna göre MDI alt kaplamış, boyutu hesaplar.
WM_MENUCHAR MDI çerçevesi pencereyi mesajı iletir.
WM_MOVE Varsa MDI istemci kaydırma çubukları, yeniden hesaplar.
WM_SETFOCUS Etkin MDI child penceresi ise alt pencereyi etkinleştirir.
WM_SIZE Gerekli işlemleri yapar bir pencerenin boyutunu değiştirmek için özellikle maksimize veya bir MDI alt penceresi geri yüklemek için. Bu ileti DefMDIChildProc işlevine geçmek için başarısız yüksek oranda istenmeyen sonuçlar üretir.
WM_SYSCOMMAND (Eski sistem olarak da bilinir) pencere menü komutlarını işleme: SC_NEXTWINDOW, SC_PREVWINDOW, sc_move, SC_SIZE ve SC_MAXIMIZE.

Index