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