在這過程中要用到三個 Windows API 函數(shù),它們是:
Private Declare Function LockWindowUpdate Lib "user32" (ByVal hwndLock As Long) As Long
Private Declare Function GetDesktopWindow Lib "user32" () As Long
Private Declare Function SetParent Lib "user32" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long
LockWindowUpdate 函數(shù):鎖定當(dāng)前窗口
GetDesktopWindow 函數(shù):獲取當(dāng)前桌面窗口
SetParent 函數(shù):將窗口放到指定的窗口中
該過程主要原理是通過 SetParent 函數(shù)指定報表窗口的戶窗口句柄 hWnd 來實現(xiàn)將報表窗口放置在指定口中。由于要用到窗口句柄 hWnd,而在 access 只有窗體才具有窗口句柄 hWnd,因此我們用一個窗體來作為子窗體使用。在本文中,這個窗體名為 frmBack,具體屬性設(shè)置如下:
記錄選擇器:否
滾動條:兩者均無
記錄選擇器:否
導(dǎo)航按鈕:無
分隔線:無
自動調(diào)整:是
邊框樣式:無
圖片:D:\我的文檔\My Pictures\back-1.gif
圖片縮放模式:拉伸
其它均為默認(rèn)值
這樣這個窗體既具有窗口句柄 hWnd,又可作為開始的背景使用。
下面開始設(shè)計報表,在本文中報表名為 rpt1,按照正常報表進(jìn)行設(shè)計,只有一個屬性需要特別設(shè)置:
彈出方式:是
Private Declare Function LockWindowUpdate Lib "user32" (ByVal hwndLock As Long) As Long
Private Declare Function GetDesktopWindow Lib "user32" () As Long
Private Declare Function SetParent Lib "user32" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long
LockWindowUpdate 函數(shù):鎖定當(dāng)前窗口
GetDesktopWindow 函數(shù):獲取當(dāng)前桌面窗口
SetParent 函數(shù):將窗口放到指定的窗口中
該過程主要原理是通過 SetParent 函數(shù)指定報表窗口的戶窗口句柄 hWnd 來實現(xiàn)將報表窗口放置在指定口中。由于要用到窗口句柄 hWnd,而在 access 只有窗體才具有窗口句柄 hWnd,因此我們用一個窗體來作為子窗體使用。在本文中,這個窗體名為 frmBack,具體屬性設(shè)置如下:
記錄選擇器:否
滾動條:兩者均無
記錄選擇器:否
導(dǎo)航按鈕:無
分隔線:無
自動調(diào)整:是
邊框樣式:無
圖片:D:\我的文檔\My Pictures\back-1.gif
圖片縮放模式:拉伸
其它均為默認(rèn)值
這樣這個窗體既具有窗口句柄 hWnd,又可作為開始的背景使用。
下面開始設(shè)計報表,在本文中報表名為 rpt1,按照正常報表進(jìn)行設(shè)計,只有一個屬性需要特別設(shè)置:
彈出方式:是

