Страница 24 из 30
Функции размера и позиции После создания окна, прикладная программа может устанавливать размер окна или позицию, вызывая одну из нескольких различных функций, среди которых SetWindowPlacement, MoveWindow, SetWindowPos и DeferWindowPos. SetWindowPlacement устанавливает позицию свернутого окна, позицию развернутого окна, восстанавливает размер и позицию окна и показывает его состояние. Функции MoveWindow и SetWindowPos похожи; обе устанавливают размер или позицию отдельного окна прикладной программы. Функция SetWindowPos включает в себя набор флажков, которые воздействуют на состояние показа окна; MoveWindow не включает в себя эти флажки. Используйте функции BeginDeferWindowPos, DeferWindowPos и EndDeferWindowPos, чтобы одновременно установить позицию ряда окон, включая размер, позицию, позицию в Z-последовательности и состояние показа. Прикладная программа может отыскать координаты ограничительного прямоугольника окна, используя функцию GetWindowRect. GetWindowRect заполняет структуру RECT координатами верхних левых и нижних правых углов окна. Координаты, вычисляемые относительно верхнего левого угла экрана, те же самые для дочернего окна. Функции ScreenToClient или MapWindowPoints отображает экранные координаты ограничительного прямоугольника дочернего окна относительно координат рабочей области родительского окна. Функция GetClientRect отыскивает координаты рабочей области окна. GetClientRect заполняет структуру RECT координатами верхних левых и нижних правых углов рабочей области, а координаты отсчитываемые относительно рабочей области самостоятельно. Это означает, что координаты верхнего левого угла рабочей области - всегда (0,0), а координаты нижнего правого угла - ширина и высота рабочей области. Функция CascadeWindows располагает каскадом окна на рабочем столе или располагает каскадом дочерние окна определенного родительского окна. Функция TileWindows располагает окна на рабочем столе или дочерние окна определенного родительского окна в не перекрывающих друг друга положениях ("мозаикой"). |