「アプリケーション フレームワークを有効にする」チェックを外すと、画面のデザインが変わってしまう。

解決


さわら  2009-02-15 17:20:49  No: 145779  IP: 192.*.*.*

こんにちは。VB2008でexeを作成しています。
exeの二重起動を防止するために、以下のQAの回答を元にmutexを利用することにしたのですが、
http://madia.world.coocan.jp/cgi-bin/vbnet/wwwlng.cgi?print+200902/09020013.txt
スタートアップをフォームからSub Mainに変更したため、
「My Project」の「アプリケーション」タブにある
「アプリケーション フレームワークを有効にする」のチェックを外さないといけません。
(「アプリケーション フレームワークを有効にする」がONのときは、スタートアップが
フォームでないとダメのようです。)
そこでこのチェックを外したのですが、このプログラムを実行すると、
画面のデザインが変わってしまいました。
プログラムを実行したのはVistaのPCなのですが、気づいた点を以下に示しますと、
・ボタンが角ばっている
  (「アプリケーション フレームワークを有効にする」のチェックがONのときは
  Vistaで表示されるような、なめらかな感じのボタンであった。)
・プログレスバーの表示がXPのようにつなぎ目のある表示になってしまっている。
  (「アプリケーション フレームワークを有効にする」のチェックがONのときは
  Vistaで表示されるような、つなぎ目のない、なめらかな感じだった。)


これをアプリケーション フレームワークを有効にする」のチェックがONのときのように
Vistaの場合はVistaっぽい表示にするためにはどうしたらよいのでしょうか?
どなたかどうぞよろしくお願いします。

編集 削除
aetos  2009-02-16 11:49:04  No: 145780  IP: 192.*.*.*

Main の中で Application.Run を呼ぶ前に、Application.EnableVisualStyles を呼んでみるとか。
http://msdn.microsoft.com/ja-jp/library/system.windows.forms.application.enablevisualstyles.aspx

編集 削除
さわら  2009-02-16 14:40:47  No: 145781  IP: 192.*.*.*

aetos様。まさにビンゴでした。
これでVistaの場合はVistaっぽい表示になりました。
その他困るようなことはないようです。
ありがとうございました。
今後ともよろしくお願いします。

編集 削除