#428 Windowsのテーマを使うかどうかをプログラムから設定する方法 フォーム、VBA

Windows XPの「Windowsのテーマ」に合わせて、Access2003からはオプション設定でフォームの表示にWindowsのテーマを適用するかどうかを設定できるようになりました。適用すると、各コントロールがWindowsのテーマに合わせたデザインで表示され、適用しない場合には従来からあるOSと同じデザインとなります。

この、Windowsのテーマを使うかどうかのオプション設定は、VBAのプログラムからも設定変更することができます。この方法を使えば、Access自体のオプション設定画面ではなく、オリジナルのオプション設定画面にもWindowsのテーマ使用・不使用のオプション機能を付加することができます。

次の例では、[Windowsのテーマを使用]チェックボックス(コントロールの名前は"chkWindowsテーマ")のチェックの有無によって、使用・不使用を切り替えています。
ポイントは「SetOptionメソッド」です。この第1引数に所定のオプション名を文字列として指定し、第2引数でそれに対する設定値を指定しています。Windowsのテーマの場合は「Themed Form Controls」というあらかじめ決められた文字列が第1引数となります。

Private Sub chkWindowsテーマ_AfterUpdate()
'[Windowsのテーマを使用]チェックボックスの更新後処理

  Application.SetOption "Themed Form Controls", Me!chkWindowsテーマ

End Sub


Windowsテーマ使用時:
Windowsテーマ使用時

Windowsテーマ不使用時:
Windowsテーマ不使用時

※SetOptionメソッドを使うと、これ以外のAccessのオプション値もVBAから設定することができます。オプション項目によって具体的にどのような引数を指定するかはAccessのオンラインヘルプで確認できます。
| Index | Prev | Next |



T'sFactory
Accessで動く生産管理DB
Ureru Express
Webで使う販売顧客管理
Access開発&アドバイス
DB開発やテクニカルアドバイス
Copyright © T'sWare All rights reserved