mfc_Client_Rect - 8BitsCoding/RobotMentor GitHub Wiki

μœˆλ„μš° μž‘μ—…μ˜μ—­(ClientRect) μœˆλ„μš° ν™”λ©΄(WindowRect) μ •μ˜

이미지


μ½”λ“œ μ˜ˆμ‹œ (AdjustWindowRect + SetWindowPos)

# define WINSIZE_X 1920
# define WINSIZE_Y 1080

RECT rcClient = {0,0,WINSIZE_X,WINSIZE_Y};   
// ν˜„μž¬ μœˆλ„μš°μ˜ ν˜„μ œ 크기 - left , top , right ,bottom

// ν˜„μž¬ μœˆλ„μš°μ˜ 크기λ₯Ό μž‘μ—…μ˜μ—­μ„ κΈ°μ€€μœΌλ‘œ ν•œ 크기λ₯Ό μ–»μ–΄μ€€λ‹€.
AdjustWindowRect(
    &rcClient,  //ν˜„μ œ μœˆλ„μš° 크기
    WINSTYLE,   //ν˜„μ œ μœˆλ„μš° λͺ¨μ–‘에 λŒ€ν•œ μŠ€νƒ€μΌ
    FALSE       //메뉴 있음 μ—¬λΆ€ 
    );

//μ–»μ–΄μ˜¨ μ‚¬κ°ν˜•μ˜ μ •λ³΄λ‘œ μœˆλ„μš° μ‚¬μ΄μ¦ˆλ₯Ό μ…‹νŒ…ν•œλ‹€.
SetWindowPos(
    g_hWnd,NULL,
    0,0,// λ³€κ²½ μœ„μΉ˜
    (rcClient.right - rcClient.left ),  //λ³€κ²½ μ‚¬μ΄μ¦ˆ κ°€λ‘œ
    (rcClient.bottom - rcClient.top),   //λ³€κ²½ μ‚¬μ΄μ¦ˆ μ„Έλ‘œ
    SWP_NOZORDER | SWP_NOMOVE           //μ˜΅μ…˜ ν”Œλž˜κ·Έ F12둜 νƒ€λ³΄μž // SWP - μ…‹ μœˆλ„μš° 포슀
);

// SWP_NO Z ORDER -> 깊이 λ³€κ²½ μ•ˆν•¨
// NO MOVE - > 이동을 μ•ˆν•œλ‹€  . 즉 λ³€κ²½ν•  μœ„μΉ˜κ°€ λ°”λ€Œμ§€ μ•ŠμŒ.

μœˆλ„μš° μž‘μ—…μ˜μ—­ μ•Œμ•„λ‚΄κΈ° (GetClientRect)

// ν•¨μˆ˜μ›ν˜•
BOOL GetClientRect(HWND hwnd, LPRECT lprc);

μœˆλ„μš° ν™”λ©΄ 크기 μ•Œμ•„λ‚΄κΈ° (GetSystemMetrics)

// ν•¨μˆ˜μ›ν˜•
int GetSystemMetrics(int nIndex);

μ°Έκ³ μ‚¬μ΄νŠΈ