- 締切済み
クリップボード画像転送方法
こんにちは、VB6.0にてクリップボード画像転送方法について質問 させて頂きたく書き込みいたしました。 Printscreenキーを押してクリップボードへ画像を転送したまでは 良いのですが、その画像をPictureBoxを扱わずにBitblt等で操作 いたしたいのですが方法は御座いますでしょうか? どうかよろしくお願いいたします
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- Oh-Orange
- ベストアンサー率63% (854/1345)
★『API』関数でのお話になります。 ・『GetClipboardData』関数に『CF_DIB』定数を指定してデータが取り出せると思います。 取り出した画像データは『ヘッダ構造体』+『ビットマップ情報』で構成されている はずです。→確認はしていませんが。 ・または『CF_BITMAP』定数を指定して BITMAP のハンドルを取得してから『Bitblt』などの 関数で処理する事になるかもしれません。多分『PrintScreen』キーでは『CF_DIB』定数で ビットマップのデータを取り出せると思います。 ・下に参考になりそうなリンクを張っておきます。→C/C++ ですが参考になると思います。 ・以上。おわり。→APIの『GetClipboardData』関数がキーワードです。 参考文献1: ・http://forums.belution.com/ja/vc/000/230/00s.shtml→『クリップボード』SetClipboardData 関数ですので、逆の仕組みで参考にして下さい。 ・http://rararahp.cool.ne.jp/cgi-bin/lng/vc/vclng.cgi?print+200407/04070019.txt→『クリップボードから画像データを取得して表示すると反転する』 ・http://rararahp.cool.ne.jp/cgi-bin/lng/vc/vclng.cgi?print+200509/05090003.txt→『ビットマップをクリップボードにセット』 ・http://hpcgi1.nifty.com/MADIA/DelphiBBS/wwwlng.cgi?print+200607/06070010.txt→『クリップボードの内容をストリームに書き出すには?』 参考文献2: ・http://www.activebasic.com/forum/viewtopic.php?t=54→『クリップボードの文字列操作』VBです。 ・http://www.activebasic.com/help_center/Pages/API/GDI/Bitmap/type_BITMAPINFO.htm→『構造体: BITMAPINFO』 ・http://wisdom.sakura.ne.jp/system/winapi/win32/win90.html→『クリップボード』