引用:
> ウインドウが最前面化されているか取得するには
> どうすればいいのですか?
> 最前面化は簡単に出来るのですが。
> どなたか教えてください。
確実に行くなら、
最前面ウィンドウかどうかを調べたいウィンドウの拡張スタイルを調べます。
もし、調べたいウィンドウのハンドル値がhwndだとすると
コード:
Dim ex_style As DWord
ex_style = GetWindowLong(hwnd,GWL_EXSTYLE)
あとは取得した拡張スタイルに
WS_EX_TOPMOSTが含まれているかを調べます。
コード:
If ex_style And WS_EX_TOPMOST Then
'最前面ウィンドウであった場合の処理
Else
'最前面ウィンドウでなかった場合の処理
End If
ちなみに最前面ウィンドウの解除も上の手順の反対を行えばできます。
コード:
Dim ex_style As DWord
ex_style = GetWindowLong(hwnd,GWL_EXSTYLE)
ex_style = ex_style And (Not(WS_EX_TOPMOST))
SetWindowLong(hwnd,GWL_EXSTYLE,ex_style)