关于void CMainFrame::OnSize(UINT nType, int cx, int cy) 的使用?
保保亲水 2011-11-11 11:28:38 对这条语句不是很明白,请懂得的大侠给介绍一下。。。
void CMainFrame::OnSize(UINT nType, int cx, int cy)
{
CFrameWnd::OnSize(nType, cx, cy);
// TODO: Add your message handler code here
HWND hWnd1 = m_wndSplitter1.GetSafeHwnd();
HWND hWnd2 = m_wndSplitter2.GetSafeHwnd();
HWND hWnd3 = m_wndSplitter3.GetSafeHwnd();
if( hWnd1 == NULL || !::IsWindow( hWnd1 ) ||
hWnd2 == NULL || !::IsWindow( hWnd2 )||
hWnd3 == NULL || !::IsWindow( hWnd3 ))
{
return;
}
// Resize each row of the second splitter
int cxCur, cxMin;
m_wndSplitter1.GetColumnInfo( 0, cxCur, cxMin ); [color=#FF0000]//这里什么意思???? m_wndSplitter1.SetColumnInfo( 0,450, cxMin );[/color] //这里什么意思???450是什么意思???
int cyCur, cyMin;
m_wndSplitter2.GetRowInfo( 0, cyCur, cyMin );
m_wndSplitter2.SetRowInfo( 0,300, cyMin ); //这里的300呢?
int czCur, czMin;
m_wndSplitter3.GetRowInfo( 0, czCur, czMin );
m_wndSplitter3.SetRowInfo( 0, 200, czMin );
//为什么会有 int cxCur, cxMin;int cyCur, cyMin;int czCur, czMin; 呢?这里的x,y,z是自己随意定义的吗?
// Ask each splitter to recalculate its layout
m_wndSplitter1.RecalcLayout();
m_wndSplitter2.RecalcLayout();
m_wndSplitter3.RecalcLayout();
m_wndSplitter1.SetActivePane( 0, 0, NULL ); //激活一个窗口 //为什么会有这句呢???
m_wndSplitter1.SetLock( TRUE ); //锁定分割器窗口
m_wndSplitter2.SetLock( TRUE ); //锁定分割器窗口
m_wndSplitter3.SetLock( TRUE ); //锁定分割器窗口
}
请给讲讲,谢谢了。。。