全コントロールのFontNameを一挙に変えたい

解決


VB遭難者  2005-07-08 19:32:16  No: 123328  IP: [192.*.*.*]

VB6で英語対応のソフトを作りたいと思っています。ソフト全体のコントロールの数が100以上ありますので切り替えが大変です。  FontNameを英語の時にはMicrosoft Sans Selifに変えたいのですが一度に変える簡便な方法があったら教えてください。

編集 削除
通ってみた  2005-07-08 19:57:22  No: 123329  IP: [192.*.*.*]

フォームを包むようにドラッグすれば全体が選択されるけど、だめでしょうかね

編集 削除
z  2005-07-08 20:33:50  No: 123330  IP: [192.*.*.*]

Dim varObj      As Variant
    For Each varObj In Me.Controls
        varObj.FontName = "Microsoft Sans Selif"
    Next varObj

とかは?

編集 削除
VB遭難者  2005-07-09 09:12:51  No: 123331  IP: [192.*.*.*]

1.Form全体をドラッグして包む方法
通ってみたさん  ありがとうございました。
早速やってみましたが全体を囲むと表示されるプロパティが共通項目だけになってしまいFontNameプロパティが表示されなくなってしまいました。

2.For Each  でFontNameを変更する方法
zさん、ありがとうございました。  やってみましたがエラー438「オブジェクトはこのプロパティまたはメソッドをサポートしていません」と出てしまいました。  このエラーを回避できれば一番簡便なのですが。  

解決方法が何かありましたら教えてください。

編集 削除
ガッ  2005-07-09 10:11:19  No: 123332  IP: [192.*.*.*]

ノ<横失礼。

> 1.Form全体をドラッグして包む方法
> 通ってみたさん  ありがとうございました。
> 早速やってみましたが全体を囲むと表示されるプロパティが共通項目だけになってしまいFontNameプロパティが表示されなくなってしまいました。
Fontプロパティを含むコントロールだけを選択すればいいかと。

> 2.For Each  でFontNameを変更する方法
> zさん、ありがとうございました。  やってみましたがエラー438「オブジェクトはこのプロパティまたはメソッドをサポートしていません」と出てしまいました。  このエラーを回避できれば一番簡便なのですが。  
メンバがあるかどうかを調べるのは困難だと思いますので、
On Error ステートメントを使って、例外を処理すればいいと思います。

編集 削除
通ってみた  2005-07-09 12:12:37  No: 123333  IP: [192.*.*.*]

全選択してから、CtrlもしくはShiftを押しながらfontがないものを選択すれば、それだけ選択から外れるよ

編集 削除
VB遭難者  2005-07-09 12:23:45  No: 123334  IP: [192.*.*.*]

ガッ様  うまくいきました。  z様  通ってみた様ありがとうございました。  On Errorは不覚にも気づきませんでした。  大感謝です。

編集 削除