デスクトップウインドウの貼り付け

解決


DotL  2003-05-17 07:59:43  No: 51401

早速ですが、デスクトップウインドウのイメージを自ウインドウに貼り付けたのですが、自分のウインドウが表示されているデスクトップのイメージとなってしまいます。ウインドウを非表示にしたり、仮想域に詰たりしてからイメージを転送すると当然何も表示されません。自ウインドウが表示されていない時の寸前のデスクトップのイメージを自ウインドウのクライアント域に貼り付けできないでしょうか。どなたかご存知でしたらお願いします。


NASU  2003-05-17 08:26:40  No: 51402

PaintDesktop API

http://www8.plala.or.jp/myna/prog/winapiw.html


DotL  2003-05-17 08:45:47  No: 51403

NASUさん、ありがとうございます。
PaintDesktopはすでに使用しております。また上のサンプル(PaintDesctop)を実行するとやはり、真っ黒です。Win98ではうまくいったんですが...。


DotL  2003-05-17 09:01:49  No: 51404

すみません。PaintDesktopは背景だけですね。デスクトップの可視部すべてをコピーしたいので、GetDesktopWindowに変えました。でも失敗(?)します。

hDC=GetDesktopWindow(); 
ShowWindow(.....
BitBlt(hDC.....

でやるのですが、自分のウインドウが表示された後の、画像になってしまいます。


DotL  2003-05-17 09:04:37  No: 51405

※BitBlt(自ウインドウのDC,...hDC,0,0,SRCCOPY);
でした。


DotL  2003-05-20 06:11:19  No: 51406

メモリを利用したところ見事にできました。
ありがとうございました。


DotL  2003-05-20 06:14:41  No: 51407

>hDC=GetDesktopWindow(); 
>ShowWindow(.....
>BitBlt(hDC.....

hDC=GetDC(GetDesktopWindow()); 
ShowWindow(.....
BitBlt(hDC.....

でした。すいません。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加