DOBON.NET DOBON.NETプログラミング掲示板過去ログ

禁止状態コマンドボタンのハンドル取得につきまして

環境/言語:[WindowsXP vb6]
分類:[VB6以前]

再度、お世話になります。

禁止状態コマンドボタンのハンドル取得につきまして

マウスの位置からコマンドボタンのハンドルを取得しています。
コマンドボタン(Command1)が使用状態ですと取得できますが、
禁止状態ですとハンドルが取得できません。

Command1.Enabled = False '禁止状態
Command1.Enabled = True '使用状態

'マウスの位置を取得
Call GetCursorPos(Pos)

'ウィンドウのハンドルを取得
hwnd = WindowFromPoint(Pos.x, Pos.y)

Text1= hwnd

禁止状態でもハンドルが取得することは可能でしょうか。
ご指導して頂けますと幸いです。
よろしくお願い致します。
仕様です。
WindowFromPointのリファレンスに書かれています。

英語のリファレンス
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/windowing/windows/windowreference/windowfunctions/windowfrompoint.asp
>The WindowFromPoint function does not retrieve a handle to a hidden or
>disabled window, even if the point is within the window. An application
>should use the ChildWindowFromPoint function for a nonrestrictive search.
一応日本語訳のリファレンス
http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jpwinui/html/_win32_windowfrompoint.asp
※誤訳されている可能性があるので、常に英語の方に目を通されるとよいでしょう。

最低限、ヘルプを見てから質問しましょう。
(Google検索でもすればすぐに見つかりますよ。)
Blue様

返信頂きましてありがとうございました。
仕様でありますWindowFromPointのリファレンスにより
調べることができるようになりました。
前回もお世話になりお礼を申し上げます。
2007/01/04(Thu) 12:42:06 編集(投稿者)

関数 ChildWindowFromPointEx を使用することで
禁止状態でもハンドルが取得できるようになりました。
ご指導頂きまして本当にありがとうございました。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板