İyi günler! Uygulamamı CMDIFrameWnd'den CMDIFrameWndEx'e güncelliyorum ve MainFrame'in istemci alanı sorunuyla karşılaştım.Benim m_hWndMDIClient ve sınıfımla birlikte Subclass'ım vardı. Şimdi m_wndClientArea var ve bana sadece baş ağrıyor! Şimdi Alt Sınıfı alamıyorum.İstemci Alanı CMDIFrameWndEx
mdiCliWnd_.Attach(m_wndClientArea.Detach());
mdiCliWnd_.Invalidate();
mdiCliWnd_.UpdateWindow();
m_wndClientArea.Attach(mdiCliWnd_.Detach());
Ama ben bile bu işe nasıl kontrol edemez şimdi bir sorun var çünkü başka fonksiyonlara müvekkilim alanının CWnd vermek gerektiğini, fakat m_wndClientArea korunmaktadır: Bunu yapmaya çalıştım yüzden . Sorularım: Kendi sınıfımı başka bir şekilde sınıflandırabilir miyim? Yapamazsam, başka bir işleve vermek için m_wndClientArea'yı nasıl kullanmalıyım?
Ana neden, istemci alanında OnRButtonUp (etc) işlevlerini kullanmaktır! "Klasik alt sınıflama" hakkındaki cevabınızı buradan okudum - http://stackoverflow.com/questions/30209469/how-to-limit-the-number-of-mdi-tab-groups, ama anlamıyorum özellikle alt sınıf - CMDIClientAreaWnd veya CMDIFrameWndEx ve nasıl olmalıdır? – DmitryLazdin
Nesne olmayan bir nesne alt sınıfını! m_hWndMDIClient. RButtonUP/Down'un tespit edilmesinin nedeni nedir? Bağlam menüleri WM_CONTEXTMENU ile uygulanmalıdır ve bu mesajlar ana pencerelere aktarılır ... – xMRi
Ne yazık ki, bir alt sınıfın nasıl ele alınacağını bilmiyorum .. - Altkümün Penceresi (pParentFrm _-> m_hWndMDIClient) - MFC alt sınıflama, çünkü zaten alt sınıf nesnesinin hatası veriyor. Bu yüzden bana "standatd alt sınıf bir tutamaç" örneğini verebilir misin? – DmitryLazdin