netail.net
自作フリーソフトや,ゲームに関する雑記を公開してます.
日記はソフトウェア工学の論文ネタが中心です.
最近のお知らせ (古いものはこちら)
2007-11-04 [長年日記] ▲
_ [VolumeDeskbar] 背景の透明化に対応 ▲
デスクバンドもIEツールバーの一種なので,IEツールバーの背景にXPスタイルを適応する方法を読みながら,せっせと作成してみました.
DrawThemeParentBackground(self.Handle, panel.Canvas.Handle, rect)
のような感じで呼び出すと,Window 上の Panel だけがさも透明であるように見えるので,Vista 上ではあっさり動作確認まで進みました.
古い Windows では,こんな API は使えないので,uxtheme.dll を LoadLibrary して,Draw... 関数が GetProcAddress で取れるかどうかで使用を判断することにしました(OSのバージョン情報を素直に使ったほうがいいのかもしれませんが……).
XP/2000/98 上での動作を調べてからリリースする予定です.同じバイナリが,これだけ違うバージョンが違うOSで動くのは感動なんですが(Eclipse プラグインとかのバージョン依存性に比べるときわめて柔軟),動作確認の手間は大きいです.