LayeredWindow

20041108-LayeredWindow.png

※Delphi Q&A掲示板より来られた方へ:MikiはMayuki Sawatariさん製作のプレーヤであり、この記事を書いている僕とは一切関係ありません。
 Mayuki Sawatariさん作のMikiというサウンドプレーヤーがあるのですが、これと同じようなものを.NET Framework無しで作ってみたくて、久々にDelphiを弄っています。
 正方形でない(要するに普通の四角形のウィンドウではない)ウィンドウを表示するには、以前はRegionというマスク画像のようなものを作ってあげる必要がありました。が、Windows 2000/XPではLayeredWindowというものが使用できるようになりました。LayeredWindowでは、透過したい色を指定するだけで、正方形でないウィンドウを作ることができます。
 で、作ってみたサンプルが最初のスクリーンショットです。
 結構簡単に出来上がったのですが、文字の縁取りを半透明にするためには、SetLayeredWindowAttributesではなく、UpdateLayeredWindowを使わなければいけないことが分かりがっくり。
 ツメが甘いようで…

“LayeredWindow” に対するコメントはありません。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください