CStaticの背景がおかしい – プログラミング – Home

通知
すべてクリア

CStaticの背景がおかしい


KK
 KK
(@KK)
ゲスト
結合: 23年前
投稿: 5
Topic starter  

VS2008 VC++で ATL/WTL使っています

IEのツールバーを作っていてツールバーのWM_CTLCOLORSTATICを下のように処理して
CStaticの背景を消しています

LRESULT OnCtlColorStatic(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
{
SetBkMode((HDC)wParam,TRANSPARENT);
return ((LRESULT)GetStockObject(NULL_BRUSH));
}

が、このようにするとCStaticの背景は透明になってるっぽいのですが、たとえばIEの上
にFireFoxを開いていて、IEのウィンドウをアクティブにすると、CStaticの背景の部分に
そこにそれまで表示されていたFireFoxの画面が写りこみます。

どのように解決したらいいのでしょうか。
よろしくお願いします。


引用解決済
トピックタグ
仲澤@失業者
(@uncle_kei)
Prominent Member
結合: 5年前
投稿: 828
 

提示された方法で背景が透明になると思っている人が多いのですが、
厳密に言うと、その方法では常に安定して透明の状態にはできません。
TextOutで、文字を書いた方がはるかにましです。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました