• ベストアンサー

フォームにJPG画像を表示させたい。

テーブルに画像を格納してフォーム上で表示させたいのですが ここのサイトで色々検索していたら http://okwave.jp/qa1674068.html の質問がヒットして読んだのですが アクセス2003の自分にとってはPhoto Editorがないため無理そうです。 (BMPにしたらかなり劣化したのでダメでした。) そこで上の過去の質問で KenKen_SPサマがおっしゃる ”テキスト型にしてファイルパスを格納 し、必要な時に BMP画像を表示する仕様とした方が、データベース の仕様としては好ましく思います。” とはどういうことでしょうか? 早速該当のJPG画像のパスをテキスト型のフィールドに入れてみましたが フォームのテキストボックスにはただパスが表示されるだけでした。 (コントロールソースに関連付けた) もしかしてテキストボックスではない?汗 他の方の質問&回答に便乗して申し訳ございませんが ご教授よろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

BMPファイルの格納を、MDB内とせずに外に出しておく。 ただし、その「外」(ファイルパス)がどこにある何なのか?をテキスト型の列に持たせておく。(例 C:\画像\TEST001.BMP ) BMPファイルが必要な局面で、「外」をフォームのプロパティに設定する。 ということでしょうね。

noname#150498
質問者

お礼

なるほど!やってみます。ありがとうございます。

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

画像のあり場所のフルパスとファイル名(あわせて文字列です)を持っておれば、その画像が画面や印刷に必要な場合は、その画像ファイルを読み込めるコントロール(Imegeなど、を探して)、そこに読見込んで表示すればば良い。 例えば フォーム(フォーム12)にイメージコントロール(イメージ0)を貼り付け Sub test025() Forms("フォーム12").イメージ0.Picture = "C:\Documents and Settings\All Users\Documents\My Pictures\Sample Pictures\Sunset.jpg" End Sub を実行すると画像が表示される。 このPicture =の右辺が判っておれば、必要なときに画像を表示できる わけだ。 この右辺は例えば商品テーブルで、商品名からクエリで検索して画像名フィールドを知り、そこから持って繰れば良いわけ。 すなわちテーブルに画像そのものを持っておく必要は、必ずしもない。

noname#150498
質問者

お礼

いい案ですね!ありがとうございます。

  • bonaron
  • ベストアンサー率64% (482/745)
回答No.2

データベースの肥大化を防ぐため こういうやり方が普通かと思います。 http://www.accessclub.jp/samplefile/samplefile_63.htm

noname#150498
質問者

お礼

ラベルにいれちゃうのですね。ありがとうございます。参考になりました。

関連するQ&A