Winapi MFC CFrameWndEx大小控制以适应客户端区域覆盖工具栏和状态栏

Winapi MFC CFrameWndEx大小控制以适应客户端区域覆盖工具栏和状态栏,winapi,visual-c++,mfc,Winapi,Visual C++,Mfc,我有一个自定义FrameWnd类,它有工具栏和状态栏,但也有一个子窗口,可以填充整个客户端区域。当我调用GetClientArea并调整子窗口的大小以填充客户端区域时,它会覆盖工具栏和状态栏。如何获得客户端区域的大小减去这些条工具栏和状态栏占用客户端区域空间,而不是非客户端空间,您必须获得它们的大小并自己减去它们,windows不会为您这样做 例如: CRect rc, rcToolbar, rcStatus; GetClientRect(&rc); m_Toolbar.GetClien

我有一个自定义FrameWnd类,它有工具栏和状态栏,但也有一个子窗口,可以填充整个客户端区域。当我调用GetClientArea并调整子窗口的大小以填充客户端区域时,它会覆盖工具栏和状态栏。如何获得客户端区域的大小减去这些条

工具栏和状态栏占用客户端区域空间,而不是非客户端空间,您必须获得它们的大小并自己减去它们,windows不会为您这样做

例如:

CRect rc, rcToolbar, rcStatus;
GetClientRect(&rc);
m_Toolbar.GetClientRect(&rcToolbar);
m_Status.GetClientRect(&rcStatus);

rc.top = rcToolbar.bottom;
rc.bottom -= rcStatus.bottom;