0

次のような wxWidgets のカスタム コントロールを作成しようとしています。

カスタム コントロール

wxTextCtrl と wxBitmapButton が含まれています。作成するのはかなり簡単ですが、私の目標は、XP、Vista、Win 7、Win 8、Mac OS X で同じように見えるスケーラブルなコントロールを作成することです。

通常、ネイティブ コントロールは、ユーザーが OS でフォ​​ント サイズ (125%、150%、200%) を変更すると、サイズを調整します。私の場合、そのようなコントロールは wxTextCtrl のサイズを大きくし、このボタンの wxBitmapButton と画像のサイズを大きくする必要があります。

そのため、私の質問は次のとおりです。

  1. wxBitmapButton でスケーラブルなイメージを作成するにはどうすればよいですか? (たぶん、.svg のようなベクター画像を使用する必要がありますか?)

  2. wxBitmapButton で画像サイズを大きくする必要があることをどのように認識できますか?

すべての OS で同じように見えるようにしたいので、ネイティブ コントロールは使用しません。

4

1 に答える 1

0

現在、wxWidgets のシステム フォント サイズの変更に対応する移植可能な方法がないため、プログラムの起動時に有効なフォント サイズを尊重することが最善の方法です。このためには、プログラムでピクセル単位の値をハードコーディングする代わりに、 orのいずれGetTextExtent()GetChar{Height,Width}()のメソッドを使用するだけで十分です。wxWindowwxDC

于 2013-07-04T21:56:14.733 に答える