使用 PaintPalette 屬性可以指定窗體或報表所用的調(diào)色板。Variant 型,可讀寫。
expression.PaintPalette
expression 必需。返回“應(yīng)用于”列表中的一個對象的表達式。
可以通過使用宏或 Visual Basic 對 PaintPalette 屬性進行設(shè)置。該屬性設(shè)置必須是一個包含調(diào)色板信息的 String 數(shù)據(jù)類型的值。
要設(shè)置 PaintPalette 屬性,可在宏或 Visual Basic 中將 PaintPalette 屬性設(shè)置為 ObjectPalette 屬性的值;或?qū)?PaletteSource 屬性進行設(shè)置(這種情況下,Microsoft Access 自動將 PaintPalette 屬性設(shè)為 PaletteSource);還可以將一個窗體或報表的 PaintPalette 屬性設(shè)置為另一個窗體或報表的 PaintPalette 屬性。
窗體的 PaintPalette 屬性可在窗體“設(shè)計”視圖和“窗體”視圖中設(shè)置。
報表的 PaintPalette 屬性只能在報表“設(shè)計”視圖中進行設(shè)置。
在設(shè)置 PaintPalette 屬性時,Microsoft Access 會復(fù)制所指定的調(diào)色板,并將其保存在對應(yīng)的窗體或報表中。這樣,以后在修改窗體或報表時該調(diào)色板就是可用的了。
在設(shè)置 PaintPalette 屬性時對所指定的調(diào)色板的修改不會影響存儲在窗體或報表中的調(diào)色板副本。如果要更新存儲在窗體或報表中的調(diào)色板副本,必須在打開窗體或報表時重新運行代碼或宏以設(shè)置 PaintPalette 屬性或重新設(shè)置 PaletteSource 屬性。
在設(shè)置窗體或報表的 PaintPalette 屬性時,Microsoft Access 將自動更新其 PaletteSource 屬性。相反,在設(shè)置窗體或報表的 PaletteSource 屬性時,PaintPalette 屬性也會自動更新。例如,假設(shè)用 PaintPalette 屬性指定了一個自定義調(diào)色板,則 PaletteSource 屬性設(shè)置將改為“(自定義)”。PaintPalette 屬性(僅在宏或 Visual Basic 中才可用)可用于設(shè)置窗體或報表的調(diào)色板。PaletteSource 屬性則提供了一種在屬性表中設(shè)置窗體或報表的調(diào)色板的方法,該方法使用的是一個已有的圖形文件。
注釋 Windows 在同一時刻只允許有一個活動的調(diào)色板。而 Microsoft Access 則允許在窗體上有多個圖形,每個圖形都使用不同的調(diào)色板。通過 PaintPalette 和 PaletteSource 屬性可以指定在顯示圖形時窗體應(yīng)該使用哪個調(diào)色板。
可以使用 ObjectPalette 屬性使應(yīng)用程序的與 OLE 對象、位圖或其他包含在窗體或報表控件中的圖形相關(guān)的調(diào)色板能夠用于 PaintPalette 屬性。例如,要在設(shè)計 Microsoft Access 窗體時使得用于 Microsoft Graph 的調(diào)色板可用,可將窗體的 PaintPalette 屬性設(shè)置為一個已有的圖表控件的 ObjectPalette 值。
使用 ObjectPalette 和 PaintPalette 屬性,可通過編程方法在運行時改變打開的窗體所使用的調(diào)色板。通常是將當(dāng)前窗體的 PaintPalette 屬性設(shè)為具有焦點的控件中顯示的圖形的調(diào)色板。
例如,可以設(shè)置窗體使其帶有一張海洋圖片,上面有許多藍色底紋,還有一張夕陽圖片,上面有許多紅色底紋。由于 Windows 在同一時刻只允許有一個活動的調(diào)色板,因此其中一張圖片會顯得比另一張好看。下面的示例使用控件的 Enter 事件將窗體的 PaintPalette 屬性設(shè)為該控件的 ObjectPalette 屬性,這樣焦點所在的那張圖就會處于最佳顯示狀態(tài)。
Sub OceanPicture_Enter()
Me.PaintPalette = Me!OceanPicture.ObjectPalette
End Sub
Sub SunsetPicture_Enter()
Me.PaintPalette = Me!SunsetPicture.ObjectPalette
End Sub