CRect::DeflateRect
更新 : 2007 年 11 月
DeflateRect は各辺を中心方向に移動することによって CRect を縮小します。
void DeflateRect(
int x,
int y
) throw( );
void DeflateRect(
SIZE size
) throw( );
void DeflateRect(
LPCRECT lpRect
) throw( );
void DeflateRect(
int l,
int t,
int r,
int b
) throw( );
パラメータ
x
CRect の右辺と左辺を縮小させるための単位数。y
CRect の上辺と下辺を縮小させるための単位数。size
CRect を縮小させるための単位数を指定する SIZE または CSize。cx 値は右辺と左辺を縮小させるための単位数を指定し、cy 値は上辺と下辺を縮小させるための単位数を指定します。lpRect
各辺を縮小させるための単位数を指定する RECT 構造体または CRect。l
CRect の左辺を縮小させるための単位数。t
CRect の上辺を縮小させるための単位数。r
CRect の右辺を縮小させるための単位数。b
CRect の下辺を縮小させるための単位数。
解説
DeflateRect は左辺と上辺に単位数を加算し、右辺と下辺から単位数を減算することにより縮小します。DeflateRect のパラメータは符号付きの値です。正の値は CRect を縮小し、負の値は拡大します。
最初の 2 つのオーバーロードは、CRect の向かい合った辺をそれぞれ縮小するので、全体の幅は x (または cx) の 2 倍、全体の高さは y (または cy) の 2 倍減少します。ほかの 2 つのオーバーロードは、CRect の各辺を対になる辺とは独立して縮小します。
使用例
CRect rect(10, 10, 50, 50);
rect.DeflateRect(1, 2);
ASSERT(rect.left == 11 && rect.right == 49);
ASSERT(rect.top == 12 && rect.bottom == 48);
CRect rect2(10, 10, 50, 50);
CRect rectDeflate(1, 2, 3, 4);
rect2.DeflateRect(&rectDeflate);
ASSERT(rect2.left == 11 && rect2.right == 47);
ASSERT(rect2.top == 12 && rect2.bottom == 46);
必要条件
ヘッダー : atltypes.h