分割ウインドウ分割ウインドウ(スプリッタウィンドウ)今回はエディットを分割します。2つのウインドウの境界をマウスでドラッグすることにより、ウインドウのサイズを変えることができるようにします。2つのウインドウの境界の幅は、4ptとします。この境界上にマウスポインタを持ってくると、マウスポインタが変わるようにします。WindowsSDKで分割ウインドウを作成するのは難しく、工夫が要ります。(MFCなら簡単なのですが。)2つのウインドウを作成し、そのうちひとつのウインドウのスタイルに、WS_THICKFRAME(サイズ変更の可能なウィンドウ枠)を指定する方法もありますが、今回はマウスキャプチャを使う方法を用います。今回のアプリケーションの欠点は次のとおりです。・ウインドウのサイズを変えるとき、InvalidateRect()が常時発生するため、画面がちらつき、CPUの消費が大きい。作成したソースを修正します。流れWM_CREATE1.2つのエディトコントロールを作成します。WM_SIZE1.MoveWindow()で、エディットのウインドウサイズを変えます。2.InvalidateRect()で、再描画します。WM_LBUTTONDOWNマウスの左ボタンが押されたとき、WM_LBUTTONDOWNメッセージが発生します。1.SetCapture()でマウスキャプチャを開始。これがないと、ウインドウの境界をマウスで一気に動かすと、ウインドウの境界が動かなくなります。2.マウスカーソルを、左右両方向矢印カーソル(IDC_SIZEWE)に変えます。これがないと、マウスの左ボタンを押した直後のマウスポインタが、標準のマウスポインタに変わってしまいます。WM_LBUTTONUPマウスの左ボタンを離したとき、WM_LBUTTONUPメッセージが発生します。1.GetWindowRect()で親ウインドウのウインドウサイズを取得し、RECT構造体にセットします。RECT構造体);2.ReleaseCapture()でマウスキャプチャを終了。3.PostMessage()で親ウインドウにWM_SIZEメッセージを発生させ、ウインドウを再描画します。lParamパラメータ);WM_MOUSEMOVEマウスカーソルが移動したとき、WM_MOUSEMOVEメッセージが発生します。●マウスをドラッグ中のとき、1.GetWindowRect()で親ウインドウのウインドウサイズを取得し、RECT構造体にセットします。2.PostMessage()で親ウインドウにWM_SIZEメッセージを発生させ、ウインドウを再描画します。●マウスをドラッグ中でないとき、3.2つのエディトコントロールに挟まれた隙間に、マウスカーソルがある場合、マウスカーソルを、左右両方向矢印カーソル(IDC_SIZEWE)に変えます。それ以外の場合は、通常のマウスカーソルにします。ソースコードの入力ソースコードは下記のように入れてください。ウィンドウを作成します。グローバル変数にインスタンス処理を格納します。ウィンドウのメッセージを処理します。width;}上記の太線で示している箇所のみ追加です。1002上記の太線で示している箇所のみ追加です。