C++Builder相談室

このエントリーをはてなブックマークに追加
709706
>>707
どうもありがとうございます。
いろいろ周ったところ、
問題はCF_DIB形式に指定して読み込めば良いらしいということでした。

VCLのデフォルトではCF_DIBのクリップボードデータを読めないそうなので
RegisterClipboardFormatでCF_DIB形式を追加してやれば良いということです。
そこで厨房ながらに下のようなコードを試してみましたが
未対応の形式であるとして受けつけてくれませんでした。
{
TPicture *clip = new TPicture;
clip->RegisterClipboardFormat(
__classid(TPicture),
CF_DIB,
__classid(Graphics::TBitmap));

clip->Bitmap->LoadFromClipboardFormat(CF_DIB,
Clipboard()->GetAsHandle(CF_DIB),0);
Image1->Picture->Bitmap->Assign(clip);

delete clip;
}