最前面ウインドウか調べる

返信する


答えを正確に入力してください。答えられるかどうかでスパムボットか否かを判定します。

BBCode: ON
[img]: ON
[url]: ON
スマイリー: OFF

トピックのレビュー
   

展開ビュー トピックのレビュー: 最前面ウインドウか調べる

ありがとうございます

by rest » 2008年11月05日(水) 20:59

教えていただき、ありがとうございます。
ActiveBasicは少し前に始めたばかりなのでよく分かりません。
今後も、わからない事があったら、質問させていただきます。

Re: 最前面ウインドウか調べる

by NoWest » 2008年11月01日(土) 17:40

> ウインドウが最前面化されているか取得するには
> どうすればいいのですか?
> 最前面化は簡単に出来るのですが。
> どなたか教えてください。
確実に行くなら、
最前面ウィンドウかどうかを調べたいウィンドウの拡張スタイルを調べます。
もし、調べたいウィンドウのハンドル値が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)

最前面ウインドウか調べる

by rest » 2008年11月01日(土) 11:42

ウインドウが最前面化されているか取得するには
どうすればいいのですか?
最前面化は簡単に出来るのですが。
どなたか教えてください。

ページトップ