ab.com コミュニティ

ActiveBasicを通したコミュニケーション
現在時刻 - 2024年3月29日(金) 16:09

全ての表示時間は UTC+09:00 です




新しいトピックを投稿する  トピックへ返信する  [ 3 件の記事 ] 
作成者 メッセージ
投稿記事Posted: 2008年11月01日(土) 11:42 
ウインドウが最前面化されているか取得するには
どうすればいいのですか?
最前面化は簡単に出来るのですが。
どなたか教えてください。


通報する
ページトップ
   
投稿記事Posted: 2008年11月01日(土) 17:40 
オフライン

登録日時: 2005年5月31日(火) 10:52
記事: 264
お住まい: 高知
引用:
> ウインドウが最前面化されているか取得するには
> どうすればいいのですか?
> 最前面化は簡単に出来るのですが。
> どなたか教えてください。
確実に行くなら、
最前面ウィンドウかどうかを調べたいウィンドウの拡張スタイルを調べます。
もし、調べたいウィンドウのハンドル値が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)


通報する
ページトップ
投稿記事Posted: 2008年11月05日(水) 20:59 
教えていただき、ありがとうございます。
ActiveBasicは少し前に始めたばかりなのでよく分かりません。
今後も、わからない事があったら、質問させていただきます。


通報する
ページトップ
   
期間内表示:  ソート  
新しいトピックを投稿する  トピックへ返信する  [ 3 件の記事 ] 

全ての表示時間は UTC+09:00 です


オンラインデータ

このフォーラムを閲覧中のユーザー: Ahrefs [Bot] & ゲスト[26人]


トピック投稿:  可
返信投稿:  可
記事編集: 不可
記事削除: 不可
ファイル添付: 不可

検索:
ページ移動:  
cron
Powered by phpBB® Forum Software © phpBB Limited
Japanese translation principally by ocean