Windows客户区窗口大小设置

时间:2016-05-22 00:38:10   收藏:0   阅读:1148

#define WINDOW_WIDTH 800

#define WINDOW_HEIGHT 600

Windows下设置的窗口(非客户区)长宽分别为800 x 600

所以当我们用函数GetClientRect(hwnd, &rect)获取客户区大小 rect.right为782   rect.bottom为555

所以如果要设置客户区成800 x 600

RECT rect1;
RECT rect2;
GetWindowRect(hwnd, &rect1);   // 四个坐标分别表示窗口矩形左上角和右下角在屏幕的X Y坐标
GetClientRect(main_window_handle, &rect2);  // 四个坐标分别表示客户区左上角和右下角的X Y坐标

 

// 2*WINDOW_WIDTH-rect2.right 等价于 WINDOW_WIDTH + (WINDOW_WIDTH – rect2.right)

// WINDOW_WIDTH – rect2.right 客户区 800782

// 将窗口扩大18(800-782)像素也等价于将客户区扩大18像素

MoveWindow(hwnd,

                    rect1.left,  rect1.top,

                    2*WINDOW_WIDTH-rect2.right,

                    2*WINDOW_HEIGHT-rect2.bottom,

                    true);

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!