我們經(jīng)常能在網(wǎng)上看到有一些熱區(qū)圖片,所謂熱區(qū)圖片,就是在一幅大圖片中包含許多區(qū)域(熱區(qū)),單擊每個(gè)區(qū)域會(huì)鏈接到不同的頁面,熱區(qū)最典型的應(yīng)用應(yīng)該是地圖了。 這里我們使用VB5制作熱區(qū)圖片,編程的思路是這樣的:首先在窗體上放置一個(gè)PictureBox控件,在其中裝載一幅圖片,作為熱區(qū)的背景圖片,然后再在PictureBox控件上放置幾個(gè)Image控件,作為“熱區(qū)”——每個(gè)Image控件對應(yīng)一個(gè)熱區(qū),接下來要做的事就是在Image控件的單擊事件中加入觸發(fā)代碼,以使用戶單擊熱區(qū)時(shí)程序會(huì)有不同的反映。我們不妨就借鑒網(wǎng)絡(luò)圖片熱區(qū)的樣子,在單擊不同的熱區(qū)時(shí)鏈接到不同的網(wǎng)頁。 由于程序中牽涉到鏈接網(wǎng)頁,所以還需要一個(gè)瀏覽器控件:WebBrowser,你可以這樣加載它:在控件箱的空白處單擊鼠標(biāo)右鍵,彈出快捷菜單,選擇“部件”菜單項(xiàng),出現(xiàn)“部件”對話框,選擇對話框中的“控件”標(biāo)簽,在其下的列表框中復(fù)選Microsoft Interner Controls,確定退出,此時(shí)控件工具箱中就多了一個(gè)地球圖標(biāo),它就是我們需要的瀏覽器控件WebBrowser,為了使用戶在將鼠標(biāo)移動(dòng)到不同的熱區(qū)上會(huì)有提示出現(xiàn),還可以在窗體中加入一個(gè)狀態(tài)欄控件StatusBar,這個(gè)控件位于“部件”對話框中的Microsoft Windows Common Controls 5.0中。 在這個(gè)程序中,設(shè)置3個(gè)熱區(qū),也就是需要3個(gè)Image控件,這三個(gè)熱區(qū)分別將用戶鏈接到“上海熱線”、“新浪”和“中國雅虎”的主頁上,編程之前,在PictureBox控件的屬性對話框中為Picture指定一幅圖片、將Form1的MaxButton屬性指定為False、把3個(gè)Image控件的MousePointer屬性都改成99,并為MouseIcon屬性指定成手形,以便告知用戶“這里有一個(gè)鏈接存在”。其余控件的屬性都用缺省值,設(shè)計(jì)好的界面如圖所示。 以下是程序清單: Private Sub Form_Load() Picture1.AutoSize=True WebBrowser1.Left=0 WebBrowser1.Top=0 WebBrowser1.Width=Me.Width-200 StatusBar1.Style=sbrSimple StatusBar1.SimpleText="熱區(qū)范例" Me.Caption="Hotarea" End Sub Private Sub Image1_Click() WebBrowser1.Navigate "www.online.sh.cn" End Sub Private Sub Image1_MouseMove(Button As Integer,Shift As Integer,X As Single,Y As Single) StatusBar1.SimpleText="上海熱線" End Sub Private Sub Image2_Click() WebBrowser1.Navigate "www.sina.com.cn" End Sub Private Sub Image2_MouseMove(Button As Integer,Shift As Integer,X As Single,Y As Single) StatusBar1.SimpleText="新浪" End Sub Private Sub Image3_Click() WebBrowser1.Navigate "http://cn.yahoo.com/" End Sub Private Sub Image3_MouseMove(Button As Integer,Shift As Integer,X As Single,Y As Single) StatusBar1.SimpleText="中國雅虎" End Sub Private Sub Picture1_MouseMove(Button As Integer,Shift As Integer,X As Single,Y As Single) StatusBar1.SimpleText="熱區(qū)范例" End Sub(上海 錢可棟)
|