У меня есть окно приложения, в которое я добавляю стиль WS_THICKFRAME и удалил стиль WS_CAPTION.Когда окно развернется до максимума, я хочу скрыть WS_THICKFRAME, но сохранить функцию Aero-Snap, поэтому я изменил свой обработчик для WS_NCCALCSIZE, чтобы он возвращал завышенный прямоугольник относительно размера границ окна.важная часть кода обработчика WS_NCCLIENTSIZE выглядит следующим образом:
...
CRect rc( lpncsp->rgrc[0] );
if (IsZoomed())
{
int borderSize = GetSystemMetrics(SM_CYSIZEFRAME);
rc.InflateRect(borderSize,topOff+borderSize,borderSize,borderSize);
}
else
rc.InflateRect(0,topOff+0,0,0);
lpncsp->rgrc[0] = rc;
...
Этот код эффективно делает WS_THICKFRAME скрытым.в то время как развернуто) WS_THICKFRAME рисуется в пределах границы.Есть ли сообщение, в котором я могу вернуть завышенный прямоугольник назад или, по крайней мере, заново отрегулировать размер окна, чтобы снова скрыть WS_THICKFRAME, когда фокус окна установлен / не установлен?