在ACCESS 2002中,可以通過(guò)數(shù)據(jù)庫(kù)窗體的[啟動(dòng)]屬性來(lái)設(shè)置應(yīng)用程序(ACCESS主窗體)的標(biāo)題和圖標(biāo),那么在ACCESS 2000中怎么辦呢?其實(shí)ACCESS提供了AppTitle和AppIco兩個(gè)屬性以及RefreshTitleBar方法,可以用來(lái)實(shí)現(xiàn)這個(gè)目的,本文將詳細(xì)介紹如何編制程序和使用。
首先,新建一個(gè)模塊,在模塊中定義兩個(gè)常量(來(lái)自微軟幫助中的例程):
Public Const DB_Text As Long = 10 ’ 屬性值為文本類(lèi)型
Public Const DB_Boolean As Long = 1 ’ 屬性值為邏輯類(lèi)型
接下編寫(xiě)下列函數(shù)(此函數(shù)來(lái)自ACCESS幫助中),以實(shí)現(xiàn)在數(shù)據(jù)庫(kù)中添加或修改數(shù)據(jù)庫(kù)屬性。
Public Function AddAppProperty(strName As String, varType As Variant, varvalue As Variant) As Integer
’=============================================================================================
’ 本函數(shù)用來(lái)給當(dāng)前數(shù)據(jù)庫(kù)(.mdb)添加屬性
’
’ strName : 屬性名
’ varType : 屬性類(lèi)型
’ varvalue: 屬性的值
’
’ 返回值 : 成功 為 True (-1)
’ 失敗 為 False (0)
’
’ 例如:應(yīng)用程序標(biāo)題欄和應(yīng)用程序圖標(biāo)
’ intX = AddAppProperty("AppTitle", DB_Text, "更改應(yīng)用各標(biāo)題欄和應(yīng)用程序圖標(biāo)的例子")
’ intX = AddAppProperty("AppIcon", DB_Text, CurrentProject.Path & "\MSN.ico")
’ ’ 應(yīng)用設(shè)置
’ Application.RefreshTitleBar
’
’ 易和軟件:朱亦文 2002.05.01
’=============================================================================================
Dim dbs As Object, prp As Variant
Const conPropNotFoundError = 3270
’ 返回指向當(dāng)前數(shù)據(jù)庫(kù)的 Database 對(duì)象變量。
Set dbs = CurrentDb ’ 如果是ADP,則為 CurrentProject
On Error GoTo AddProp_Err
’ 更改屬性值, 在更改屬性值出錯(cuò)出,
’ 則表示該屬性不存在,轉(zhuǎn)到錯(cuò)誤處理程序。
dbs.Properties(strName) = varvalue
AddAppProperty = True
AddProp_Bye:
Exit Function
AddProp_Err:
If Err = conPropNotFoundError Then
’ 添加此屬性
Set prp = dbs.CreateProperty(strName, varType, varvalue)
dbs.Properties.Append prp
Resume
Else
AddAppProperty = False
Resume AddProp_Bye
End If
End Function
然后編寫(xiě)更改ACCESS標(biāo)題和圖標(biāo)的函數(shù):
Public Function ChangeMyACCESSTitle(strTitle As String) As Integer
’ 設(shè)置ACCESS主窗體的標(biāo)題
ChangeMyACCESSTitle = AddAppProperty("AppTitle", DB_Text, strTitle)
Application.RefreshTitleBar ’ 刷新標(biāo)題欄,設(shè)置ACCESS的標(biāo)題
End Function
Public Function ChangeMyACCESSIco(strIcoPath As String) As Integer
’ 設(shè)置ACCESS主窗體的圖標(biāo)
ChangeMyACCESSIco = AddAppProperty("AppIcon", DB_Text, strIcoPath)
Application.RefreshTitleBar ’ 刷新標(biāo)題欄,設(shè)置ACCESS的圖標(biāo)
End Function
如果想要把 ACCESS 的圖標(biāo)改在 C:\my.ico, 則只要這樣就可以了:
iX = ChangeMyACCESSIco("C:\my.ico")
如果想要把 ACCESS 的標(biāo)題改為“我的應(yīng)用程序”,則只要這樣:
iX = ChangeMyACCESSTitle("我的應(yīng)用程序")
首先,新建一個(gè)模塊,在模塊中定義兩個(gè)常量(來(lái)自微軟幫助中的例程):
Public Const DB_Text As Long = 10 ’ 屬性值為文本類(lèi)型
Public Const DB_Boolean As Long = 1 ’ 屬性值為邏輯類(lèi)型
接下編寫(xiě)下列函數(shù)(此函數(shù)來(lái)自ACCESS幫助中),以實(shí)現(xiàn)在數(shù)據(jù)庫(kù)中添加或修改數(shù)據(jù)庫(kù)屬性。
Public Function AddAppProperty(strName As String, varType As Variant, varvalue As Variant) As Integer
’=============================================================================================
’ 本函數(shù)用來(lái)給當(dāng)前數(shù)據(jù)庫(kù)(.mdb)添加屬性
’
’ strName : 屬性名
’ varType : 屬性類(lèi)型
’ varvalue: 屬性的值
’
’ 返回值 : 成功 為 True (-1)
’ 失敗 為 False (0)
’
’ 例如:應(yīng)用程序標(biāo)題欄和應(yīng)用程序圖標(biāo)
’ intX = AddAppProperty("AppTitle", DB_Text, "更改應(yīng)用各標(biāo)題欄和應(yīng)用程序圖標(biāo)的例子")
’ intX = AddAppProperty("AppIcon", DB_Text, CurrentProject.Path & "\MSN.ico")
’ ’ 應(yīng)用設(shè)置
’ Application.RefreshTitleBar
’
’ 易和軟件:朱亦文 2002.05.01
’=============================================================================================
Dim dbs As Object, prp As Variant
Const conPropNotFoundError = 3270
’ 返回指向當(dāng)前數(shù)據(jù)庫(kù)的 Database 對(duì)象變量。
Set dbs = CurrentDb ’ 如果是ADP,則為 CurrentProject
On Error GoTo AddProp_Err
’ 更改屬性值, 在更改屬性值出錯(cuò)出,
’ 則表示該屬性不存在,轉(zhuǎn)到錯(cuò)誤處理程序。
dbs.Properties(strName) = varvalue
AddAppProperty = True
AddProp_Bye:
Exit Function
AddProp_Err:
If Err = conPropNotFoundError Then
’ 添加此屬性
Set prp = dbs.CreateProperty(strName, varType, varvalue)
dbs.Properties.Append prp
Resume
Else
AddAppProperty = False
Resume AddProp_Bye
End If
End Function
然后編寫(xiě)更改ACCESS標(biāo)題和圖標(biāo)的函數(shù):
Public Function ChangeMyACCESSTitle(strTitle As String) As Integer
’ 設(shè)置ACCESS主窗體的標(biāo)題
ChangeMyACCESSTitle = AddAppProperty("AppTitle", DB_Text, strTitle)
Application.RefreshTitleBar ’ 刷新標(biāo)題欄,設(shè)置ACCESS的標(biāo)題
End Function
Public Function ChangeMyACCESSIco(strIcoPath As String) As Integer
’ 設(shè)置ACCESS主窗體的圖標(biāo)
ChangeMyACCESSIco = AddAppProperty("AppIcon", DB_Text, strIcoPath)
Application.RefreshTitleBar ’ 刷新標(biāo)題欄,設(shè)置ACCESS的圖標(biāo)
End Function
如果想要把 ACCESS 的圖標(biāo)改在 C:\my.ico, 則只要這樣就可以了:
iX = ChangeMyACCESSIco("C:\my.ico")
如果想要把 ACCESS 的標(biāo)題改為“我的應(yīng)用程序”,則只要這樣:
iX = ChangeMyACCESSTitle("我的應(yīng)用程序")