CWnd::ModifyStyle
更新 : 2007 年 11 月
ウィンドウのスタイルを変更します。
BOOL ModifyStyle(
DWORD dwRemove,
DWORD dwAdd,
UINT nFlags = 0
);
パラメータ
dwRemove
スタイル変更中に除去されるウィンドウ スタイルを指定します。dwAdd
スタイル変更中に追加されるウィンドウ スタイルを指定します。nFlags
SetWindowPos に渡すフラグ。SetWindowPos を呼び出さないときは 0 です。既定値は 0 です。設定するフラグのリストについては、「解説」を参照してください。
戻り値
スタイルの変更が正常終了した場合は 0 以外を返します。それ以外の場合は 0 を返します。
解説
ビットごとの OR (|) 演算子を使って、追加または削除されるスタイルを結合できます。利用できるウィンドウ スタイルの詳細については、Windows SDK の「Window Styles」と「CreateWindow」を参照してください。
nFlags が 0 以外のとき、ModifyStyle は Windows API 関数 SetWindowPos を呼び出し、次の 4 つのあらかじめ設定された nFlags の組み合わせによって結び付けられたウィンドウを再描画します。
SWP_NOSIZE 現在のサイズを保持します。
SWP_NOMOVE 現在の位置を保持します。
SWP_NOZORDER 現在の Z オーダーを保持します。
SWP_NOACTIVATE ウィンドウをアクティブにしません。
ウィンドウの拡張スタイルの変更については、「CWnd::ModifyStyleEx」を参照してください。
メモ : |
---|
特定コントロール内のスタイル (エディット コントロール内の ES_READONLY スタイルなど) については、コントロールによる特殊な内部処理の実行が必要になる可能性があるため、ModifyStyle でスタイルを正しく変更できない場合があります。ModifyStyle でスタイルを正しく変更できない場合は、スタイルの変更に対応するメッセージが表示されます (上記の例では EM_SETREADONLY)。 |
使用例
// This example adds the WS_CLIPCHILDREN style to the window.
// No Styles are removed from the window.
void CMyView::OnInitialUpdate()
{
CView::OnInitialUpdate();
ModifyStyle(0, WS_CLIPCHILDREN);
}
必要条件
ヘッダー : afxwin.h