指定したウィンドウだけをキャプチャーするには?


初心者卒研生  2006-10-17 20:43:43  No: 133731

VB6.0で、
WindowFromPoint、GetDC、BitBltを使ってキャプチャーしているのですが、
一緒に開いているウィンドウまでキャプチャーしてしまいます。
指定したウィンドウだけをキャプチャーする方法を教えてください。


ヤマ@文系  2006-10-18 02:16:10  No: 133732

キャプチャーしたいウインドウの
zオーダーをその都度変更したらどうでしょうか?


初心者卒研生  2006-10-18 02:58:03  No: 133733

ネットで調べて試してみましたが、
他のウィンドウと重なっている部分はやはり切れるか、
重なってしまいます。
また、タイマーで取り込んで処理したいため、
一瞬でもウィンドウが前に出てくるのはいただけません。
何か別の方法は無いものでしょうか?


ヤマ@文系  2006-10-18 04:24:57  No: 133734

http://madia.world.coocan.jp/cgi-bin/VBBBS2/wwwlng.cgi?print+200212/02120042.txt
は参考になりませんか?


初心者卒研生  2006-10-18 21:34:44  No: 133735

一応貼り付けてあるリンク共々参考にしてみましたが、
やはり出来ませんでした。
それらしい部分を抜き取ってほんとに軽く変えてみたのですが、
やはり手前のウィンドウまで表示されてしまいます。
なにぶん始めてからまだ1ヶ月ほどな上に、時間が余りありませんので、
知恵をお貸し願えませんでしょうか。


暇じろー  2006-10-19 06:37:00  No: 133736

Private Declare Function PrintWindow Lib "user32.dll" _
        (ByVal hWnd As Long, ByVal hdcBlt As Long, ByVal nFlags As Long) As Long

Private Sub Timer1_Timer()
    PrintWindow コピー元のウィンドウハンドル, Me.hDC, 0&
    Me.Refresh'描画先のデバイスコンテキストをリフレッシュ
End Sub

'しかし、これはWin2000とXPだけサポートされてたと思う・・・


もげ  2006-10-19 18:16:20  No: 133737

>'しかし、これはWin2000とXPだけサポートされてたと思う・・・

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdi/prntspol_6qpj.asp

|Windows NT/2000/XP/Vista: Included in Windows XP and Windows Server 2003.
|Windows 95/98/Me: Unsupported.

WinXPとServer2003ですね。


初心者卒研生  2006-10-19 19:48:11  No: 133738

有効な関数ありがとうございます。
この関数についてひとつ質問ですが、
この関数でウィンドウ内の領域の限定は出来ますか?


あん  2006-10-19 20:26:07  No: 133739

>この関数でウィンドウ内の領域の限定は出来ますか?
少しは自分で調べろ!


初心者卒研生  2006-10-19 20:51:08  No: 133740

すみません。
おっしゃるとおりです。
甘えすぎていました。


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




  


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