- ベストアンサー
プレビュー以外のスクリーンショットをしたいのですが
C++でスクリーンショットをしたいのですが、1度前のスクリーンショットをプレビューして、次はそのウインドウが無効の状態、(ウインドウの下のスクリーン)をキャプチャしたいと思っています。一度ウインドウを非表示にしてスクリーンキャプチャするようにしたのですが、そうすると当然、一瞬画面がちらつくので他の方法を模索しています。検索するにもキーワードが分からず困っております。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
★こちらにもヒント ・SetLayeredWindowAttributes関数を利用すると出来ます。 α値は255にして使います。 例: SetLayeredWindowAttributes( hWnd, 0, 255, LWA_ALPHA );
その他の回答 (1)
- mindatg
- ベストアンサー率48% (110/227)
回答No.1
何言ってるのかサッパリです。表現がよく分かりません。 プログラムの仕様書かなんかを作ってると仮定してエスパーしてみますと、 対象を非アクティブ状態でPrintScreenキーでキャプチャし、画像を保存する。 対象をアクティブ状態にしてAlt+PrintScreenキーでウインドウのみキャプチャし、先に保存した画像の上に貼り付ける。 でどうでしょうか?
補足
すみません。確かに意味不明な質問です。 「スクリーンキャプチャし、フルスクリーンウインドウにはりつけ」 というのを60FPSで常に更新する、つまり「虫眼鏡ツール」に似た機能のアプリケーションというのが目標なのですが、WinAPIのGetDC(0)を使うと、当然プレビューをしているフルスクリーンウインドウを取り込んでしまうため、解決策を模索しています。 プレビューのウインドウを非表示にしてスクリーンキャプチャし、貼りなおすものだと画面がちらついてしまいます。 解決できる関数などあればお教えいただきたいです。 ちなみに現状ではWinAPIのみで行っております。