次の方法で共有


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」を参照してください。

0xhz2t1c.alert_note(ja-jp,VS.90).gifメモ :

特定コントロール内のスタイル (エディット コントロール内の 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

参照

参照

CWnd クラス

階層図

CWnd::SetWindowPos

CWnd::ModifyStyleEx

Window Styles

SetWindowPos

その他の技術情報

CWnd のメンバ