Шаг 81 - CWnd::CalcWindowRect

virtual void CalcWindowRect( LPRECT lpClientRect, UINT nAdjustType = adjustBorder );

Параметры

lpClientRect
Указатель на структуру RECT или объект CRect, который содержит результирующее значение прямоугольника окна.
nAdjustType
Перечислимый тип, используемый для правки результирующего значения . Он может иметь следующие значения: CWnd::adjustBorder = 0, что означает что полоса прокрутки игнорируются в вычислении; и CWnd:: adjustOutside = 1, что означает что она добавлена в конечные размеры прямоугольника.

Замечания
Вызовите этот метод, чтобы вычислить требуемый размер прямоугольника окна, основанного на желательном размере клиентского прямоугольника. Возникающий в результате прямоугольник окна (содержащийся в lpClientRect) может затем быть передан к методу Create, чтобы создать окно, чья клиентская область является желательным размером.
Вызывается каркасом для получения размера окна до создания.
Клиентский прямоугольник - самый маленький прямоугольник, который полностью включает клиентскую область. Прямоугольник окна - самый маленький прямоугольник, который полностью включает окно.

Пример

// Использует CalcWindowRect, чтобы определить размер для нового CFrameWnd 
// Базирующийся на размере текущего вида. Конечный результат -  
// Рамочное окно верхнего уровня того же самого размера как фрейм CMyView.
void CMyView::OnMyCreateframe() 
{
   CFrameWnd* pFrameWnd = new CFrameWnd;
   CRect myRect;
   GetClientRect(myRect);
   pFrameWnd->Create(NULL, "My Frame");
   pFrameWnd->CalcWindowRect(&myRect, CWnd::adjustBorder);
   pFrameWnd->MoveWindow(0, 0, myRect.Width(), myRect.Height());
   pFrameWnd->ShowWindow(SW_SHOW);
}  

Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем - 22.12.2001