はじめまして。
当方、Delphi2007を使用しています。
TDateTimePickerのColorプロパティにて背景色を変更しているのですが
WindowsVistaで実行すると白色になってしまいます。
XPでは正常に設定色で表示されます。
Delphi7でも作成してみたのですが、
こちらはVistaでも設定色で表示されています。
Delphi2007で作成した場合、Vista上ではカレンダーがかっこいい表示
(おかしな表現ですいません)になっているのですが、
これが原因なのでしょうか?
補足です。
実行時は最初の一瞬だけ設定色で表示され、その後
コンボボックス風の矢印や日付が描画されるタイミングで白に変わっているようです。
こんばんわー。
外してるかも知れませんが、
それはxpテーマを有効にしているかどうかが影響します。
たぶんお使いのxpがクラシック表示なのでしょう。
xpテーマの対応はdelphi7以降ならusesにXPManが入っていればONになります。その場合標準インターフェースはxpテーマに統一されます。
VCLの独自仕様は無視されるということです。
でも、xpテーマをOSでOFFにしている環境ではクラシック表示が有効になるので、人に配るソフトなら両方に対応する必要があります。
もにゃ さんありがとうございます。
xpテーマの場合はAPIを利用して自力でセットする必要があるということでしょうか。
いろいろ試してみたいと思います。
ありがとうございました。
よく考えると、APIで色をセットしたところで
DelphiのComctrl.pas等でテーマ色をセットしている部分を
修正しない限りは意味がないんですよね。
とりあえず、解決方法は調査中ですが
糸口は見つかったような気がしますので解決とします。
ありがとうございました。
解決にチェックをつけ忘れていました。
ツイート | ![]() |