私は高dpi対応のMFCアプリケーションを持っています。アプリはCTreeCtrl
と表示し、さまざまなdpi設定でエキスパンド/折りたたみ(たとえば+/-)の字形を適切に描画します。ここに200%のスニペットがあります。ExplorerテーマがDPI対応ではないCTreeCtrl
よりモダンな外観を提示するために、私は、ツリーコントロールのPreSubclassWindow
オーバライドにこれを追加することで、Windowsエクスプローラのようにツリーコントロールのテーマを設定しました:
SetWindowTheme(m_hWnd, L"Explorer", NULL);
をツリーコントロールは、エクスプローラのように展開/折りたたみグリフを描画するようになりました。しかし、グリフは高dpi設定では拡大縮小されません。 GetThemePartSize(td, NULL, TVP_GLYPH, GLPS_OPENED, NULL, TS_DRAW, &size)
- - 32個のピクセルであり、ここで200%で、他のスニペット
200%でテーマ部分のサイズは、です。明らかに、エクスプローラをテーマにしたグリフは、dpiが増加するにつれてサイズが大きくなることはありません。
は、事前に
おかげでこれに他の誰の実行int型を持ち、もしそうなら、あなたは所有者が/カスタムツリーコントロールの描画以外の解像度を(見つけましたか?
のVisual C++ 2015 ...
私が言ったように、私のMFCアプリケーションは、私は多分問題がどのように見えるかの画像を投稿し、質問を理解していない –
...すでに高い解像度を認識しています。矢印のものが間違って見えるのですか? –
良いアイデア - 最初の投稿を更新し、さらに情報を追加しました - ありがとう! –