当前位置:首页 > Windows程序 > 正文

Windows客户区窗口大小设置

2021-03-19 Windows程序

#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);

Windows客户区窗口大小设置

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/63544.html