APIコモンダイアログのツールバーのボタン情報を変更するには?

解決


ウィング  2007-02-04 02:53:59  No: 97864

開発環境
Windows XP
VB6(SP6)

APIコモンダイアログ(GetOpenFileName)のツールボタンの
表示名称等の情報を変更する方法を探しています。

コモンダイアログ表示前(HCBT_ACTIVATE)のメッセージをフックしてツールバーの情報を
取得しようとしているのですが、うまくいきません。
ツールバーのウィンドウハンドルは正しく取得できるのですが、
ツールバーのボタンの数を取得しようとすると0の値が返ってきます。
ボタン数が拾えれば、ボタンのID情報を取得して名称等が変更可能になると
考えたのですが・・・。
このときにはまだ、ボタンは配置されないようです。

何かよい方法がありましたら、ご教授願います。
よろしくお願いいします。


K.J.K.  2007-02-04 03:54:27  No: 97865

API関数を直接用いてダイアログを表示するというのならば、
OPENFILENAME.lpfnHookに有効なコールバックを用意するのが
基本では。

で、その場合は、WM_INITDIALOGの段階ではまだ怪しそうですから、
WM_NOTIFY で CDN_INITDONEが送られてきた辺りでチェックするとか。


ウィング  2007-02-07 18:34:07  No: 97866

回答ありがとうございます。
お返事が遅くなって申し訳ありません。

>OPENFILENAME.lpfnHookに有効なコールバックを用意するのが
>基本では。
コールバックを用意し、WM_NOTIFYでCDN_INITDONEメッセージを
受けたときに、ツールバーのボタン情報を取得したところ
正しく取得することができました。

ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加