クライアント矩形をスクリーン矩形に

制作:KrK (Knuth for Kludge)

情報・ご感想はこちら

KrK's Cracked Text > はしくれコード


環境

ソース


#include <windows.h>    // Win32API

//-------------------------------------------------
// クライアント矩形をスクリーン矩形に
// 作成 20180211 KrK
// 引数 hWnd:ウィンドウハンドル
// 引数(I/O) pRec:矩形
//-------------------------------------------------
VOID RectToScreen(HWND hWnd, RECT *pRec)
{
    POINT pt_lt;      // 左上(left/top)
    POINT pt_rb;      // 右下(right/bottom)

    // 位置に代入
    pt_lt.x = pRec->left;
    pt_lt.y = pRec->top;
    pt_rb.x = pRec->right;
    pt_rb.y = pRec->bottom;

    // スクリーン領域に
    ClientToScreen(hWnd, &pt_lt);
    ClientToScreen(hWnd, &pt_rb);

    // 矩形に書き戻す
    pRec->left = pt_lt.x;
    pRec->top = pt_lt.y;
    pRec->right = pt_rb.x;
    pRec->bottom = pt_rb.y;
}

使い方


RECT rec;   // コントロール領域

// クライアント矩形取得
GetClientRect(hWnd, &rec);

(中略)

// スクリーン矩形に変換
RectToScreen(hWnd, &rec);

使用条件


免責事項