0
大きな高さ(画面サイズより大きい)のコントロールのBitBlt()スクリーンショットを取得したいと思いますが、対応する非常に高いウィンドウを使用したくありません。私はこのコントロールのハンドルでBitBlt()のほとんどをウィンドウの境界の外側で試してみましたが、ウィンドウ内にある領域だけがキャプチャされました。ウィンドウの外の領域は黒としてキャプチャされます。私はBitBlt()のスクリーンショットをアプリウィンドウ範囲外の(より大きい)コントロールにすることはできますか?
これを修正する方法はありますか?例えば。それがここでの主な問題である場合、コントロールは完全に(そしてウィンドウに表示されているパーツだけでなく)自分自身を描画するように強制できますか?
標準の再描画メッセージであるWM_PAINTにはhdcが含まれていないため、これは非スターターです。 WM_PRINTは機能するかもしれませんが、サポートは不安定です。 – arx
WM_PRINTが機能しない場合は、ウィンドウ内のコントロールを移動して複数のスクリーンショットを取得することができます。 – rasmus