| | |
| | | { |
| | | m_crBkgnd = MAIN_CONTAINER_BACKGROUND; |
| | | m_hbrBkgnd = nullptr; |
| | | m_pBottomWnd = nullptr; |
| | | m_nBottomWndHeight = 0; |
| | | } |
| | | |
| | | CMainContainer::~CMainContainer() |
| | |
| | | |
| | | // CMainContainer 消息处理程序 |
| | | |
| | | |
| | | void CMainContainer::SetBottomWnd(CWnd* pWnd, int nHeight) |
| | | { |
| | | m_pBottomWnd = pWnd; |
| | | m_nBottomWndHeight = nHeight; |
| | | } |
| | | |
| | | BOOL CMainContainer::OnInitDialog() |
| | | { |
| | |
| | | |
| | | void CMainContainer::Resize() |
| | | { |
| | | CRect rcClient; |
| | | CRect rcClient, rcChild; |
| | | GetClientRect(&rcClient); |
| | | rcChild = rcClient; |
| | | if (m_pBottomWnd != nullptr && m_nBottomWndHeight > 0) { |
| | | rcChild.bottom -= m_nBottomWndHeight; |
| | | } |
| | | |
| | | // 先取得子窗口数量 |
| | | int count = 0; |
| | |
| | | |
| | | pClild = FindWindowEx(m_hWnd, NULL, NULL, NULL); |
| | | while (pClild != nullptr) { |
| | | pClild->MoveWindow(&rcClient); |
| | | if (pClild != m_pBottomWnd) { |
| | | pClild->MoveWindow(&rcChild); |
| | | } |
| | | else if (m_pBottomWnd != nullptr) { |
| | | m_pBottomWnd->MoveWindow(0, rcChild.bottom, rcClient.Width(), rcClient.bottom - rcChild.bottom); |
| | | } |
| | | |
| | | if (::GetProp(pClild->GetSafeHwnd(), "Home") == (HANDLE)1) { |
| | | pClild->ShowWindow(count == 1 ? SW_SHOW : SW_HIDE); |
| | | } |