ダイアログボックスのサイズを設定 – MFC
MFCでは、CWnd::MoveWindow関数を用いてダイアログのサイズを設定します。その関数のプロトタイプは以下のとおりです。
BOOL MoveWindow(
int x,
int y,
int nWidth,
int nHeight,
BOOL bRepaint = TRUE
);
ダイアログボックスのサイズを以下のように設定できます。ここで x と y はダイアログボックスの左上隅の座標、nWidth と nHeight はダイアログボックスの幅と高さ、bRepaint はダイアログボックスをすぐに再描画するかどうかを示します。
- ダイアログクラスのソースファイル(通常はDialogName.cpp)を開きます。
- OnInitDialog関数内で対応するCWndオブジェクト(通常はthis)を見つける。
- ダイアログのサイズを設定するにはMoveWindow関数を呼び出します。例えば、this->MoveWindow(0, 0, 500, 300);は、ダイアログの左上隅を座標(0, 0)に移動し、幅を500、高さを300に設定します。
以下に例を示します。
BOOL CMyDialog::OnInitDialog()
{
CDialogEx::OnInitDialog();
// 设置对话框大小为500x300
this->MoveWindow(0, 0, 500, 300);
return TRUE;
}
OnInitDialogファンクションでMoveWindowファンクションを呼び出すことで、ダイアログの初期化時にダイアログのサイズを決定できる。