[GGW3.2.1/GGH4.X] アプリケーションの表示を半透明化しているが,GG上では不透明に表示される.
技術ノート
2012/10/25
[番号]
技術ノート KGTN 2012102601
[現象]
[GGW3.2.1/GGH4.X] アプリケーションの表示を半透明化しているが,GG上では不透明に表示される.
[説明]
GGのウインドウは,その領域全てをサーバ側の情報に基づいて描画されますので,クライアント側の背景を透過表示することは出来ません.なお,クライアントフレームを有効にした場合は, 「クライアントフレームの背景を」 透過表示することが出来ます.以下のコードで動作を確認しました.
LONG exStyle = GetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE);
SetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE,(exStyle|WS_EX_LAYERED));
this->SetLayeredWindowAttributes(RGB,128,LWA_ALPHA);