文章編號: 148463 - 上次校閱: 2007年1月19日 - 版次: 3.3

ACC: 如何在表單或報表中顯示的圖像不需要將圖像儲存在資料表

系統提示本文適用於您使用的作業系統之外的作業系統。與您不相關的文章內容已停用。
進階: 須具備專家編碼、 互通性,與多使用者技能。

在此頁中

全部展開 | 全部摺疊

結論

本文將告訴您如何即可顯示點陣圖影像在表單上,或只有路徑與檔案名稱儲存在 Microsoft Access 資料表中的報表上。

本文假設您已熟悉 Visual Basic 應用程式,並且您已熟悉程式設計與 Microsoft Access 所提供的工具建立 Microsoft Access 應用程式。

如需有關 Visual Basic 應用程式,請參閱您建置應用程式與 Microsoft 存取] 手冊的版本。

注意: Microsoft Access 版本 2.0 中,應用程式的 Visual Basic 會呼叫存取基本。如需有關存取基本的詳細資訊,請參閱 < 建置應用程式"手冊]。

其他相關資訊

有時不實用將圖像儲存在 Microsoft Access 資料表。 如果您有大量圖像,或影像檔案中的每一個都很大,Microsoft Access 資料庫檔案的大小可以快速地增加。

下列範例會顯示如何在 Microsoft Access 表單和報表上顯示 Windows 點陣圖圖像 (英文) 而不將圖像儲存在 Microsoft Access 資料表。

在 Microsoft Access 97 及 7.0

建立要儲存檔案和路徑的資料資料表

  1. 開啟範例資料庫 Northwind.mdb。
  2. 建立名為 Imagetable 的新資料表,然後再新增名為 ImagePath 一個文字欄位。
  3. 在資料工作表檢視中開啟 Imagetable 資料表,然後再新增到每一筆記錄的 [路徑和點陣圖檔案名稱。下列範例顯示記錄可能的外觀:
          c:\windows\circles.bmp
          c:\windows\waves.bmp
          c:\windows\tiles.bmp
          c:\windows\bubbles.bmp
    					

在表單中顯示的影像

  1. 使用自動產生表單: 單欄式精靈 」 建立 ImageTable 資料表為基礎的新表單。
  2. 開啟 [設計] 檢視中的 [Imageform 表單,然後藉由使用工具箱中的 [圖像] 工具影像控制項加入至表單。系統提示您選取要插入的圖像。選取任何您電腦上可用的影像。名稱 ImageFrame 控制項。
  3. 將 Imageform 表單的 OnCurrent 屬性設定為下列的事件程序:
          Private Sub Form_Current()
             On Error Resume Next
             Me![ImageFrame].Picture = Me![ImagePath]
          End Sub
    						
  4. 將 ImagePath] 文字方塊的 [AfterUpdate 屬性設定為下列的事件程序:
          Private Sub ImagePath_AfterUpdate()
             On Error Resume Next
             Me![ImageFrame].Picture = Me![ImagePath]
          End Sub
    						
  5. 在表單檢視中開啟 Imageform 表單。請注意表單會顯示每一筆記錄相對應的點陣圖。

在報表中顯示圖像

  1. 您可以使用 「 自動產生報表精靈 」 來建立 ImageTable 資料表為基礎的新報表。報表 ImageReport 命名。
  2. 設計檢視中開啟 ImageReport,然後再藉由使用工具箱中的 [圖像] 工具影像控制項加入至報表。系統提示您選取要插入的圖像。選取在您的電腦使用任何影像。命名控制項 ImageFrame
  3. 將報表的 [詳細資訊] 區段的 [格式] 事件設定為下列的事件程序:
          
          Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
             Me![Imageframe].picture = me![Imagepath]
          End Sub 
    						
  4. 在 [預覽列印] 模式中開啟 [ImageReport。請注意報表會顯示每一筆記錄相對應的點陣圖。

在 Microsoft Access 2.0

建立要儲存檔案和路徑的資料資料表

  1. 開啟樣本資料庫 Nwind.mdb。
  2. 建立名為 Imagetable 的新資料表,然後再新增名為 ImagePath 一個文字欄位。
  3. 在資料工作表檢視中開啟 Imagetable 資料表,然後再新增到每一筆記錄的 [路徑和點陣圖檔案名稱。下列範例顯示記錄可能的外觀:
          c:\windows\circles.bmp
          c:\windows\waves.bmp
          c:\windows\tiles.bmp
          c:\windows\bubbles.bmp

在表單中顯示影像

  1. 使用 [自動產生表單精靈] 建立 ImageTable 資料表為基礎的新表單。名稱 Imageform 表單。
  2. 在 [設計] 檢視中開啟 Imageform 表單,然後再新增 [使用工具箱] 中的未結合物件框] 工具的 [未結合的物件框。名稱 ImageFrame 控制項。
  3. 將 Imageform 表單的 OnCurrent 屬性設定為下列的事件程序:
          Private Sub Form_Current()
             On Error Resume Next
             If Not IsNull(Me![ImagePath]) Then
             Me![ImageFrame].OLETypeAllowed = 1
             Me![ImageFrame].SourceDoc = Me![Imagepath]
             Me![ImageFrame].Action = 0
             End If
          End Sub
    						
  4. AfterUpdate 屬性 ImagePath] 文字方塊的設定下列的事件程序:
          Sub ImagePath_AfterUpdate ()
             On Error Resume Next
             Me![ImageFrame].OLETypeAllowed = 1
             Me![ImageFrame].SourceDoc = Me![Imagepath]
             Me![ImageFrame].Action = 0
          End Sub
    						
  5. 設定 ImageFrame 未結合的物件框的下列屬性:
           Enabled: Yes<BR/>
           Locked: No
        
    					
  6. 在 [表單] 檢視中開啟 [Imageform。請注意表單會顯示每一筆記錄相對應的點陣圖。
注意: 在 Microsoft Access 97 和 7.0 版,表單並不會顯示任何影像,如果不是有效的路徑,或者不是有效的檔案名稱加入 ImageTable 資料表。不過,錯誤捕捉方式可以實作其他到達請確認輸入有效的路徑和有效的檔名的程度。在 Microsoft Access 2.0 中,表單會忽略錯誤,然後在表單上顯示最新的點陣圖。

?考

OleTypeAllowed 屬性相關的詳細資訊,搜尋說明索引 OleTypeAllowed,然後 OleTypeAllowed 屬性或詢問 Microsoft Access 97 Office 小幫手。

關於 Sourcedoc 屬性的詳細資訊,搜尋 Sourcedoc,然後 來源文件 屬性的說明索引或詢問 Microsoft Access 97 Office 小幫手。

這篇文章中的資訊適用於:
  • Microsoft Access 2.0 Standard Edition
  • Microsoft Access 95 Standard Edition
  • Microsoft Access 97 Standard Edition
關鍵字:?
kbmt kbhowto kbinterop kbprogramming KB148463 KbMtzh
機器翻譯機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:148463? (http://support.microsoft.com/kb/148463/en-us/ )
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。
Retired KB Article依現狀不再更新的知識庫內容免責聲明
本文旨在說明 Microsoft 不再提供支援的產品。因此,本文係依「現狀」提供,不會再更新。