- ベストアンサー
Accessで写真(JPEG)管理ができる方法とは?
- Access2000の初心者が写真の管理を考えています。写真はLサイズで現像した写真を使用し、400dpiでJPEGで低圧縮保存します。しかし、OLEオブジェクトを使用した方法では処理が遅く、使い物になりません。一般的にはどのように画像を扱うのか、何か勘違いや失敗があるのか知りたいです。
- 写真データは商品として扱われるため、解像度を落とすことは避けたいと考えています。しかし、現在の方法では処理が遅く、使い物になりません。他の一般的な画像の読み込み方法や、何か勘違いや失敗があるのか知りたいです。
- Access2000の初心者ですが、写真の管理方法について教えてください。写真はLサイズで現像した写真を400dpiのJPEGで低圧縮して保存しますが、OLEオブジェクトを使用した方法では処理が遅く、使い物になりません。一般的にはどのように画像を扱うのか、何か勘違いや失敗があるのか知りたいです。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
さすがにOLEでは辛いですね。 目的はなんでしょうか。 画像ファイリング? 以下は私が画像を扱う場合の方法です。 テーブル「tbl01Config」を作成し、文字列型のフィールドを1つ作ります。(m01ImgPath) このフィールドには画像が置いてあるフォルダのフルパスが入ります。 テーブル「tbl02Main」を作成し、文字列型のフィールドを1つ作ります。(m02FileName) さらにコメント用のフィールドを作ってもよいでしょう。(m02Comment) tbl01Configにはレコードが1つだけあります。 例えば「D:\Images\JPEG\」とか。 tbl02Mainには画像の数だけレコードがあり、m02FileNameにはそれぞれのファイル名が入ります。 ユーザーフォームにイメージコントロールを貼り付けます。(コントロール名:imgMain) 貼り付けたときに「ファイルを開く」ダイアログが表示されたら、とりあえず適当な画像を選び、貼り付け終わったら「ピクチャ」プロパティを空にしてください。 「OLEサイズ」プロパティを「ズーム」にします。 適当なイベントでimgMainのPictureプロパティに画像のフルパスを設定してあげてください。 フルパスを取得するにはtbl01Configのレコードとtbl02Mainのレコードから値を取得して連結すればOKです。 # フルパスを取得した後に一度Dir関数などで画像が本当に存在するか確認するロジックを入れて、存在しなければピクチャーコントロールを非表示にするとか、Pictureプロパティにファイル名を設定する時にOnErrorステートメントでエラートラップし、エラーならコントロールを非表示にするとか、工夫してください。
お礼
すばらしい。 こんなに早急にお返事が頂けるとは思っておりませんでした。 本当にありがとうございます。 早速、試しましたところ、サクサク動作しました。 この速度なら使えそうです。本当にありがとうございました。