MDI子フォームにランタイムテーマを適用するには?

解決


てつこ  2017-07-20 17:31:15  No: 48697  IP: 192.*.*.*

Delphi2007にてMDIスタイルのアプリケーションを作成しています。

ランタイムテーマを有効にして作成しているのですが
MDI子フォームに適用されません。

Windows10で実行すると、次のような状態になります。

・MDIメインフォームはWindows10スタイルで表示
・MDI子フォームはWindows7のようなウインドウ枠やタイトルバーが太い状態
・MDI子フォームから表示するサブフォームはWindows10スタイルで表示

MDI子フォームにもランタイムテーマを適用する方法はないのでしょうか。

よろしくお願いいたします。

編集 削除
通りすがり  2017-07-20 18:05:16  No: 48698  IP: 192.*.*.*

カスタムマニフェストでWindows 10互換を有効にしてもだめですか?
アプリケーションマニフェスト [Delphi Programming]
http://ht-deko.com/tech077.html

編集 削除
てつこ  2017-07-21 10:06:23  No: 48699  IP: 192.*.*.*

通りすがりさん、ありがとうございます。

カスタムマニフェストを作成してみましたが結果は同じでした。

Berlinでも作成してみましたが結果は同じでした。

"MDIアプリケーションの子フレームの色 MSDN"でWEB検索すると
同様の質問をされている方がいらっしゃいました。
その情報で判断するなら、そういう"仕様"と考えるべきなのでしょうか。

編集 削除
てつこ  2017-07-24 14:11:10  No: 48700  IP: 192.*.*.*

今回は過去の資産保守のため、Delphi2007で対応する必要があるのですが
とりあえずBerlinでも試してみました。

プロジェクトオプションのカスタムスタイルに「Windows10」を追加して
デフォルトスタイルも「Windows10」とすることでMDI子フォームも
同じスタイルで描画されるようになりました。

Delphi2007で同じことを実現するのは難しそうです。

ありがとうございました。

編集 削除