2012-02-23 9 views
1

メッセージハンドラでWM_NCPAINTメッセージを処理することで、アプリケーションでカスタムボーダーを描画しています。問題は、ウィンドウ領域を設定した後でも、私のアプリのコーナーが「滑らか」ではないということです。カスタムウィンドウ枠 - スムーズボーダー?

私はちょうど画面のHDCを取得し、透明度の効果を得るためにコーナーの周りのピクセルを補間することができたかもしれないと思ったが、ユーザーがウィンドウを動かすときに境界を常に再描画する必要があるので、私はそれが有効なオプションだとは思わない。

透明感をシミュレートする方法や、コーナー付近の境界を滑らかにする方法は誰にも分かりますか?

http://i.imgur.com/Xaj9k.png

事前に感謝を:ここで

は角がどのように見えるかです。

答えて

3

Layered Windowを使用してください。これはWindows 2000以降で動作します。

Aero Glassエフェクト(Vista以降)が必要な場合は、this articleには、歴史的なペインティング手法の詳細とThe Desktop Window Managerの使用に関する詳細があります。

+0

ありがとうございました。しかし、今私のWM_NCPAINTハンドラは動作していません:( – Gogeta70