為什么在重寫的onsize函式里面都會首先呼叫基類的CDialog::Onsize,而且我看有的重寫onsize介面中,只呼叫了CDialog::Onsize,而沒有做其他操作,既然這樣,為什么要重寫onsize函式,不是已經有繼承了的onsize介面么,直接使用不就可以了么,MFC中的CDialog::onsize介面中實作了什么功能?是不是就是分配視窗的坐標
uj5u.com熱心網友回復:
c++ primer oop仔細看uj5u.com熱心網友回復:
關于C++的多型和繼承特性我是明白的,這里我不明白的有以下幾點:1、如果示例代碼如下,既然基類CVIEW中有onsize函式,而CMyView中重寫了onsize函式,但只是簡單地呼叫了基類的CView::OnSize,這么做的意義在于什么,這里我不重寫onsize函式,直接繼承基類的onsize,實作的功能不是一樣的么
void CMyView::OnSize(UINT nType, int cx, int cy)
{
CView::OnSize(nType, cx, cy);
}
2、對于如下的示例代碼,重寫的onsize函式中,呼叫了基類的onsize,并設定了子控制元件的位置,這里呼叫了基類的onsize,這個onsize實作的是什么功能,因為每當視窗大小變化時會產生WM_SIZE訊息,從而會調onsize函式,那么CView::OnSize實作的是什么功能
void CMyView::OnSize(UINT nType, int cx, int cy)
{
CView::OnSize(nType, cx, cy);
// Resize list to fill the whole view.
m_List.MoveWindow (0, 0, cx, cy);
}
uj5u.com熱心網友回復:
基類的OnSize,一般你可以屏蔽掉uj5u.com熱心網友回復:
是不是也就是說基類的OnSize()中什么也沒做,所以調與不調都沒有區別轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/88164.html
標籤:界面
上一篇:如何統一設定VS解決方案的屬性
