0

私はウィンドウXPテーマで完全に機能するwxPythonを持っていますが、「クラシックテーマ」に切り替えるとリッチテキストcntrlが境界線なしで表示されます。クラシックテーマのボーダーを有効にすることはできますが、そのためには

Q1。クラシックテーマが有効になっているかどうかを知る必要があります。

Q2。また、アプリの外観を損なう可能性のあるさまざまなテーマがいくつあるかわかりません。それで、それを回避するための最良の方法は何でしょうか?

Q3。特定のアプリケーションにテーマを適用できますか?たとえば、Pythonから任意のWindows DLLをロードして関数を呼び出すことができますが、そのような方法はありますか?

編集:私の場合、ctypes.windll.UxTheme.IsThemeActive()は機能しました

4

1 に答える 1

1

クラシックなテーマは、テーマではありません。UxTheme.dllでIsAppThemed()を呼び出すことにより、クラシックテーマを確認します

したがって、さまざまなテーマについて心配する理由はほとんどないはずです。

最後に、アプリケーションが取得する唯一の選択肢は、新しい共通コントロールを使用することを指定するマニフェストを含めることによって、テーマ設定を試行してサポートするかどうかです。マニフェストが含まれていないアプリは、テーマに設定されることはありません。そうするアプリは、ユーザーの好みに応じてテーマが設定されます。

于 2009-10-28T15:33:21.223 に答える