開発じたばた日誌

前へ●●●次へ
じたばた日誌目次へ戻る
TSUCHY Softへ戻る


Dialog Check やっとできた編

 ここまでのお勉強で下準備はできました。さあ、やってみよう。 他人のダイアログにフォントを変えたときのシミュレーションをするには

1.調査対象のダイアログとその中のコントロール類の位置、大きさをPIXEL単位で取得する
2.PIXEL単位からダイアログベース単位に変換する
3.シミュレーションしたいフォントのダイアログベース->PIXEL変換係数を取得する
4.変換係数をかけて、シミュレーションしたいフォント用のPIXEL単位系の数値を得る
5.PIXELから変換係数をかけてTWIPS系に直す


5.の変換はDialogCheckをVBで作っているために必要なのです。 あ、でもVBでもPIXELで指定できるプロパティがあったかもしれない。

 実行したらそれなりにできました。でもちっとも面白くないのです。だってコントロール類が全部ただの四角形なんだもん。 つまり他人のダイアログのコントロールの位置、大きさがわかってもそれば「ボタン」なのか「リストボックス」なのか わからないのです。

 ここまできて挫折か!! ところが不思議なことになぜか私はこんなときラッキーにも問題を打破する所を偶然見つけるのです。 ウィンドウにはクラス名というのがあります。別に私は学級委員になりたかったわけではありませんよ。

 ボタンには「BUTTON」、リストボックスには「LISTBOX」という裏の名前がついているのです。この裏の名前がわかればそのコントロール がなんなのかわかります。幸いダイアログ上のほとんどのコントロールはこの方法で判別できます。

 ちなみにプッシュボタン、ラジオボタン、チェックボックスは全部「BUTTON」です。この場合はさらにウィンドウのスタイルを調べて どの種類に属しているのか判別します。

 かなりプログラマ寄りの話になりましたね。こんな話を読んだらフツーの人は作者にはなりたくなくなるかもしれませんね。