2012年8月5日日曜日

[ExcelVBA] Class名の調べ方


FindWindowやFindWindowEXなどの関数を使う際に、クラス名を指定する必要があります。
ツールを使ったクラス名の調べ方をメモしておきます。

自分が知ったツールは2つ。
・WindID
・Winspector(参考記事:窓の杜)


では、これらを使って電卓のクラス名を調べてみたいと思います。
・WinIDの画面


電卓を起動し、タイトルバーあたりにマウスカーソルをあわせてください。
左上にTitleとあるのですが、日本語名は文字化けしています。
そして、その下にClassというところに"SciCalc"これが電卓のクラス名です。

尚、ディスプレイ部分にカーソルを当てると"Edit"
各ボタンにカーソルを当てると"Button"という名前のクラス名がつけられていることがわかります。


・Winspectorの画面


WinIDでは、マウスカーソルをただ重ねればよいのに対し、
Winspectorでは、左上のWindowListのターゲットマークを
調べたい物に対し、ドラッグ&ドロップする必要があります。
そうすると、電卓の情報がのってるところに移動してくれます。
ハンドル、クラス名、タイトル名の順に表示してあります。
つまり、クラス名はSciCalcということになります。

0 件のコメント: