2016-06-26 35 views
1

WindowsとMacで動作するはずのwxWidgets(3.1.0)アプリケーションを作成しています。 ウィンドウ上で、テキストのスケーリングを100%以上に設定すると、コントロールのサイズがすべて乱れてしまいます。私は私のアプリがdpiを認識していると言うdpiマニフェストを持っています。また、フォントのピクセルサイズをダイアログで設定していて、それはある程度機能します。コードからいくつかの要素のサイズを設定すると、必要なピクセルサイズにリサイズされますが、xrcファイルに設定されているサイズは拡大されます。また、wxSpinCtrlのサイズを小さくしようとすると、通常はある点まで減らすことができますが、テキストボックスのみが小さくなり、ボタンは比例して大きくなりません。だから私のアプリには、どんなサイズでも拡大縮小しないで、通常のdpiと同じピクセルサイズになるようにする方法があります(私のアプリは高解像度では小さく見えますが)。wxWidgetsアプリケーションの高解像度のサイズを変更しないようにする

+0

マニフェストファイルからdpi認識を削除しようとしましたか? – Igor

+0

@Igorマニフェストを削除した場合、ウィンドウにはデフォルトのズームが使用され、すべてがぼやけて見えます。 – Milan

+0

これは非常に奇妙な質問です。なぜなら、高DPI画面であなたのプログラムが意識的に*悪い*実際の解決策は、問題が何であれ解決することです。残念なことに「すべてのことを混乱させる」という表現は、正確には何かを理解するほど正確ではありません。 –

答えて

0

wxWidgets APIを使用して適切なスケーリングが適用されないようにする方法はありません。これは意味をなさないと思われるため、これが変更されるとは思われません。

wxWidgetsをwxHAVE_DPI_INDEPENDENT_PIXELSで再構築すると、基本となるグラフィカルツールキットがすでにピクセル値をスケーリングしているため、ライブラリ自体がそれを行えないようにライブラリを騙すはずです。私はこれをテストしたことはありませんが、AFAICSは、これがあなたが望むものになるはずです。

しかし、あなたが望むものは全く間違っていることを改めて言いましょう。この問題の本当の修正は、誰かにそれを説明することです。

+0

ありがとう、それは私の問題のほとんどを解決した – Milan

関連する問題