VC++6に付属するSPY++についての質問です。

このツールを使ってコントロールのIDを調べることができるという噂を耳にしましたが、
検索してみても、その方法がどうしても解りませんでした。
どうかSPY++でコントロールのIDを
取得する方法について教えてください。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2007/06/14 14:50:34
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:HISI No.1

回答回数40ベストアンサー獲得回数4

ポイント100pt

上部のメニュー(もしくはアイコン)から[検索]->[ウインドウ検索]で、"ウインドウ検索"ダイアログを開きます。

中ほどのファインダーツールをマウスでドラッグして、調べたいコントロールへ当てます。すると、該当するウインドウの情報アイコンがウインドウハンドル値とともにツリー中に表示されます。

そのウインドウ情報をマウスでダブルクリックすると、ウインドウの"ウインドウプロパティ"ダイアログが現れ、ここ([一般]タブ)にコントロールIDが示されています。

http://q.hatena.ne.jp/HISI/

id:harunoharuno

丁寧に回答いただきありがとうございます。

IDの確認はほとんどこれで解決しそうですね。

ただ、ファイル選択ダイアログの右上に表示されているアイコン

『直前に表示したフォルダへ移動』

『1つ上のフォルダへ』

『新しいフォルダの作成』

『表示メニュー』

に関してはグループになっており、

個別のIDは解りませんでした。

キャプションに対応するIDを調べ、

フックで変更したいのですが、良い方法などありませんでしょうか?

2007/06/14 12:06:54
  • id:HISI
    ポイント&いるか有難う御座います。

    なされたい事の具体的な内容にもよると思うのですが、
    こちらのページが参考になるかもしれません。
    http://yokohama.cool.ne.jp/chokuto/urawaza/struct/OPENFILENAME.html
    http://hp.vector.co.jp/authors/VA016117/esccd.html

    ご存じかもしれませんが、あとは Spy++の機能のメッセージトレース機能から得られる情報の中に、操作のヒントがあるかもしれません。
    (上部メニューの[スパイ]->[メッセージ]から、同じくファインダーツールをドラッグしてファイル検索ダイアログにあてて[OK]。そのままでは大量に出ますので、メッセージの内容などをフィルタリングしたほうが良いと思います。)
  • id:harunoharuno
    再度コメントいただきありがとうございます。
    教えていただいたリンク先についてですが、
    勉強になるものの、
    ヒントはつかめませんでした。

    やりたいことは、

    http://q.hatena.ne.jp/1181795123

    に書いてあることです。
    コントロールIDもわからず半ばあきらめ状態・・・。
    もしよい解決方法など
    ご存知でしたら回答していただきたくお願いします。。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません