掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
TQueryで画像データの取得 (ID:4041)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
TQueryを使用してデータベースから画像データ(bmp,jpg等) を取得したいのですが、32KB以上読み込めません。 q := TQuery.Create(nil); try with q do begin DatabaseName := 'xxx'; //SQLの設定 SQL.Clear; SQL.Add('SELECT * FROM image'); SQL.Add('WHERE file_name = :file_name'); //パラメータの設定 ParamByName('file_name').AsString := ファイル名; //SQLの発行 Prepare; Open; //file_dataフィールドをBlobStreamに読み込み bs := TBlobStream.Create(TBlobField(FieldByName('file_data')), bmRead); b := TBitmap.Create; try //BitmapにBlobStreamを読み込み b.LoadFromStream(bs); //画像の表示 Image1.Picture := nil; Image1.Picture.Assign(b); finally b.Free; bs.Free; end; end; finally q.Free; end; これで画像は表示できますが、32KBを超える画像は切れてしまいます。 (切れた部分は真っ黒) TTableを使用すれば、切れる事なく表示されますが、 全データをTTableに読み込むため時間がかかりすぎます。 TQueryで32KB以上の画像を表示させる方法はありますでしょうか?
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.