- 締切済み
フォーム上に画像表示したい2
お世話になります。 Access2010 内容は以下の質問をさせて頂いております。 http://okwave.jp/qa/q9117910.html イメージが付きづらかったので画像を添付させて頂きます。 リストボックス選択時に添付ファイル(画像)をフォーム上に 表示させたいです。 テーブルのデータ型で「添付ファイル」を指定し、ファイルは 画像ファイルを追加済みなので、それを表示させたいところです。 ご教示の程、宜しくお願い致します。
- みんなの回答 (5)
- 専門家の回答
みんなの回答
- panacon
- ベストアンサー率31% (214/679)
naoto0216 さんへ これって、単票フォームの中に写真があって、サブフォームのレコードを選択すると単票フォームをフィルタで抽出すれば良いんじゃないのでしょうか。 質問のイメージでは、単票フォーム側は写真のみですので、フィルタに不要なテキストボックスは乗せなくて良いし、フィルタのテキストボックスは非表示にすれば良いのではと思います。 オブジェクト型のフィールドを持つことを考えられていると思いますが、動きが重いと思います。 写真だけ別のフォームを作って、レコードをかちかち移動した時に写真がついてこなくても良いようにしてみてはと思います。
- panacon
- ベストアンサー率31% (214/679)
naoto0216 さんへ レコードを選択するたびに画像をチェンジしたいというお話であれば、画像をしまう場所と名前のつけ方を整理して、レコードの移動時に、画像のリンクプロパティにリンク先を代入するマクロを作れば良いです。フォルダまでの\\AAAA\BBB\CCという記述は定数にして、そのあと変数(画像の名前)&jpgでOKと思います。
- chayamati
- ベストアンサー率41% (260/624)
- ushi2015
- ベストアンサー率51% (241/468)
こんにちは 元テーブルを選択して、作成タブでフォームボタンをクリックすると 1回に1つのレコードに情報を入力できるフォームが作成されますよね? それをデザインビューにして、画像以外のフィールドのプロパティの可視 を「いいえ」にして、リストを追加して、「リストボックスの値を別のテーブル またはクエリから取得する」で元テーブルを指定して、フィールドを追加します。 リストボックスのイベントのクリック時にイベントプロシージャを指定して、 Private Sub リスト1_Click() Me.Filter = "ID=" & Me.リスト1.Column(0) Me.FilterOn = True End Sub のようにしてはどうですか?
補足
ushi2015さま ご回答ありがとうございます。 >それをデザインビューにして、画像以外のフィールドの >プロパティの可視を「いいえ」にして、リストを追加して、 >「リストボックスの値を別のテーブルまたはクエリから >取得する」で元テーブルを指定して、フィールドを追加します。 前の質問に書かせて頂いておりましたが、 VBAでリストボックスのIDを取得して・・ってやり方は 分かっているのですが、今回は「連結オブジェクトフレーム」 を使うことで出来ないかな?って質問になります。 「連結オブジェクトフレーム」について調べてみましたが なんかいけそうな気もしますが、使い方が理解できず。。 「連結オブジェクトフレーム」の使い方についてご教示 頂けると幸いです。 そもそも「連結オブジェクトフレーム」を使っても出来ない ってことであれば、それはそれで教えて頂けるとありがたいです。
- panacon
- ベストアンサー率31% (214/679)
naoto0216 さんへ 画像のプロパティの可視に値を代入するマクロを2つ作ります。 ひとつは、Trueを代入、もうひとつは、Falseを代入します。 リストボックスのフォーカス取得時にTrueマクロを貼り、フォーカス喪失時にFalseマクロを貼り付ければできます。
補足
panaconさま ご回答ありがとうございます。 >リストボックスのフォーカス取得時にTrueマクロを貼り、フォーカス喪失時にFalseマクロを貼り付ければできます。 この方法だと、特定の画像しか表示できないのではないのでしょうか。 リストボックスで選択されたレコードに該当する画像を 表示させたいのですが。。 例えばAAAさんが選択されたらAAAさんの画像、BBBさんが 選択されたらBBBさんの画像・・って感じです。
補足
panaconさま 度々のご回答ありがとうございます。 仰る通り、マクロなりVBAで表示させるようにする ことは理解しておりまして。。 要するに、画像を表示するのに「連結オブジェクトフォーム」 ってやつを使えば、わざわざマクロやVBAを使わなくても 表示させることができるんじゃないか?って思った次第です。 テーブルは ID 名前 電話番号 画像 1 AAA 090- 📎 2 BBB 090- 📎 3 CCC 090- 📎 となっているので、例えば、フォーム上にあるリストボックスで ID1のレコードを選択したら、その画像(添付ファイル)を表示 させることができるのではないかなと。 私が「連結オブジェクトフォーム」のことを理解できて ないので、そもそもマクロなりVBAを使わないと表示 できないかもしれませんが、それすら分からない状況です。