15番会議室「FAQ編纂委員会」に寄せられた「よくある質問の答え」
[Q]
データベーステーブルのGraphicフィールドにビットマップを保存するには
どのようにすれば良いのでしょうか?
[A]
TBlobStreamというオブジェクトを使います。
例を参照して下さい。
[例]
この例ではTable1の「Graphic」という名前のフィールドにOpenDialogで
指定されたビットマップを読み込んでいます。
procedure TForm1.Button1Click(Sender: TObject);
var
BlobStream : TBlobStream;
Bitmap : TBitmap;
begin
If Not OpenDialog1.Execute Then
Exit;
Table1.Edit;
//TBlobStreamは必ずTable.Editよりも後でCreateしなければならず、
//Table.Postの前までにFreeしなければならない。
BlobStream := TBlobStream.Create(TBlobField(Table1.FieldbyName('Graphic')),
bmWrite);
Bitmap := TBitmap.Create;
Try
Bitmap.LoadFromFile(OpenDialog1.FileName);
Bitmap.SaveToStream(BlobStream);
BlobStream.Truncate;
Finally
BlobStream.Free;
Bitmap.Free;
Table1.Post;
End;
end;
ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum FDELPHIに寄せられる質問の中から、よくある質問への回答を FDELPHIのメンバーがまとめたものです。 したがって、これらの回答はボーランド株式会社がサポートする公式のものではなく、掲示されている内容についての問い合わせは受けられない場合があります。
Copyright 1996-1998 Delphi Users' ForumFAQ編纂委員会
|