第七課 使鼠標指向按鈕時變成手形

 你如果下載了前面的計算器程序,使用的時候一定會發現當鼠標指向按鈕時就會變成手形,知道爲什麼會有這種效果嗎?其實這是借用了超級鏈接的特性,上網時大家都知道,如果鼠標指向一個超級鏈接,一般都會變成手形。按鈕中也有一個"超級鏈接地址"的屬性,如果我們在這個屬性裏填入任意一個字符,這個按鈕也就成了超級鏈接,當然也就擁有超級鏈接的特徵了。

上一課我們曾經提過For Each.…Next語句,針對一個數組或集合中的每個元素,重複執行一組語句。集合就是包含一組相關對象的對象。一個人是一個對象,一羣人就是一個集合了(也稱爲集團或團伙:)。一個按鈕是一個對象,許多個按鈕在一起就是一個集合(這就不能稱爲團伙了)。二個按鈕是一個集合,三個也是一個集合,我們如何確定一個集合呢?按鈕都放在窗體上,所以這個集合肯定也是在窗體上,每個窗體都有一個Controls 集合,這是控件集合,按鈕是控件中的一種,所以按鈕是這個集合中的一員。

For Each.…Next
用途:針對一個數組或集合中的每個元素,重複執行一組語句。
語法:
For Each 集合成員 IN 集合
語句1
語句2
語句N
Next 集合成員
基本概念都知道了,下面開始編寫代碼,要在程序一打開就使按鈕變成超級鏈接,就得在窗體的加載事件中寫代碼:

Private Sub Form_Load()
Dim ctlButt As Control 定義一個變量ctlButt,它的類型爲控件
DoCmd.Restore 恢復窗體大小,這只是控制窗體的外形,跟手形效果無關
For Each ctlButt In Me.Controls 開始循環
If TypeOf ctlButt Is CommandButton Then 如果變量ctlButt的類型是命令按鈕
ctlButt.HyperlinkAddress = " " 變量ctlButt的超級鏈接地址等於一個空格,你可以填入別的內容
End If 結束if語句
Next ctlButt 下一個控件
End Sub 結束過程

注1:TypeOf表示類型,CommandButton表示命令按鈕
注2:ctlButt.HyperlinkAddress = " " 這裏的雙引號中有一個空格,如果沒空格就是""

發佈了30 篇原創文章 · 獲贊 5 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章