ウィンドウの種類
ウィンドウ
最も良く使われる汎用的ウィンドウ。
モーダルダイアログ
一度開いたダイアログボックス(画面)を閉じるまで、
アプリ内の他の操作をできなくするダイアログボックス。
モードレスダイアログ
モーダルダイアログと異なり、一度開いたダイアログボックスを閉じなくても、
アプリ内の他の操作ができるダイアログボックス。
ウィンドウの状態
有効/無効
有効な場合、キー入力・マウス入力を受け付け、無効な場合、キー入力・マウス入力を受け付けない。
表示/非表示
最小化(アイコン化)/最大化(全画面表示)
最小化の場合、タスクバーに表示され、最大化の場合、全画面表示される。
トップモースト
通常のウィンドウより、常に前面に表示される。
ウィンドウの階層
デスクトップウィンドウ
そのまま。
トップレベルウィンドウ
デスクトップ上に配置されているウィンドウ。通常、タスクバーに表示される。
子ウィンドウ
あるウィンドウ上に配置されているウィンドウ。
親ウィンドウ
子ウィンドウが配置されているウィンドウ。
兄弟ウィンドウ
同じ親ウィンドウを持つ子ウィンドウ。
オーナーウィンドウ
ウィンドウの所有者(=ウィンドウ)。所有されたウィンドウは、所有者の前面に表示される。
ウィンドウを半透明にする。
対象となるウィンドウハンドルを取得して、以下のソースを実装する。
DWORD dwStyle = ::GetWindowLong(m_hWnd, GWL_EXSTYLE);
::SetWindowLong(m_hWnd, GWL_EXSTYLE, dwStyle | WS_EX_LAYERED);
int nAlpha = 0x7f;
::SetLayeredWindowAttributes(m_hWnd, 0, (BYTE)nAlpha, LWA_ALPHA);
コメント
最終更新:2009年01月04日 04:59