簡介
ctlExplorerBar控件一個可以實現類似Windows XP資源管理器中右側垂直欄的控件,它不僅可以創建不同的菜單組、在菜單組下添加項目,還可以為每一個項目編寫感應事件,同時它更是可以實現圖片的預覽,簡直和資源管理器的垂直欄一樣!在許多軟件界面中,它都可以發揮非常好的作用。
應用實例
想讓你的程序更加吸引眼球嗎?想在你的程序中打造像Windows XP資源管理器左側那樣的垂直欄嗎?只要在你的程序中加上ctlExplorerBar控件,通過幾段簡單的代碼,就可以輕松實現這個似乎復雜的界面效果,完全使你拋棄了繁雜的代碼!這個控件不僅容易使用,而且它實現的界面效果非常出色,完全和Windows XP中一樣(如圖1)。 下面我們就結合一個實例來說明使用方法,相信它的簡單易用和出色效果會讓你動心!
要了解該控件強大便捷的功能,下面我們就通過一個實例來講解。
第一步:首先啟動Visual Basic 6.0,新建一個窗口。
第二步:加載ctlExplorerBar控件。
①在控件工具欄中單擊右鍵,選擇“部件”,在彈出的窗口中點擊“浏覽”,找到ctlExplorerBar控件,載入它,命名為“XPmenu”;把它放到Form1窗體中任意位置即可。其他屬性保持默認即可。
第三步:加載其他控件,完成界面的設置。
①添加四個Image控件,分別命名imgDesktop、imgShare、imgComputer和imgNetwork,用來加載如圖1所示的“桌面其他”分欄下四個項前的小圖標。為這四個Image控件分別載入適當的小圖標(如圖2)。
②再添加一個Image控件,載入一副圖片,用來演示如何實現圖像預覽的功能。
這個演示程序在界面和屬性設置上都非常的簡單,只要把控件放在界面上任意位置即可,不需要設置屬性。ctlExplorerBar的位置我們可以在程序運行時進行調整。上面說到的圖片我們使用了Image控件來加載,當然你喜歡的話也可以用Picture控件或者是ImageList控件來加載,它們實現的效果是一樣的。如果用Picture控件,別忘了把其Autosize屬性設置為True。
到這裡就完成了這個演示程序的界面設置,接著進行代碼的編寫。
第三步:編寫代碼,實現界面演示。
①編寫Form1的Load事件,使程序啟動時調整ctlExplorerBar的位置,並且載入相應的分欄和項目等。代碼如下:
Private Sub Form_Load()
XPmenu.Top = 0
XPmenu.Left = 0
XPmenu.Width = Me.Width
XPmenu.AddNormalItem "文件和文件夾任務", False
XPmenu.AddSubItem 1, "重命名這個文件", imgDesktop.Picture
’……
’依照上面的格式,可以在該分欄下添加更多的項
XPmenu.AddNormalItem "其他位置"
XPmenu.AddSubItem 2, "桌面", imgDesktop.Picture
XPmenu.AddSubItem 2, "共享文檔", imgShare.Picture
XPmenu.AddSubItem 2, "我的電腦", imgComputer.Picture
XPmenu.AddSubItem 2, "網上鄰居", imgNetwork.Picture
XPmenu.AddDetailItem "詳細信息", "MyPicture1.jpg", "JPEG 圖像" & vbCrLf & "尺寸: 100 x 100" & vbCrLf & "大小: 12.5 kB" & vbCrLf & "修改
第四步:編寫代碼,實現ctlExplorerBar的事件相應。
①編寫ctlExplorerBar的分欄的打開、收起事件,代碼如下:
Private Sub XPmenu_Collapse(ByVal Index As Integer)
Me.Caption = "收起 " & Index
End Sub
Private Sub XPmenu_Expand(ByVal Index As Integer)
Me.Caption = "展開 " & Index
End Sub
從上面的代碼中我們可以看到,ctlExplorerBar提供了兩個點擊的事件,在這裡的示例中我們把事件的相應放映在窗體標題欄中,當點擊分欄時候,窗體標題欄就會顯示收起或者展開哪一個分欄。
②添加點擊分欄中項目的事件。
Private Sub XPmenu_SubItemClick(ByVal Index As Integer, ByVal SubItemIndex As Integer)
Me.Caption = "單擊 " & Index & " 在 " & SubItemIndex & " (" & XPmenu.SubItem(Index, SubItemIndex) & ")"
Me.Icon = XPmenu.SubItemIcon(Index, SubItemIndex)
End Sub
當用戶點擊分欄中的某個項目時,窗體的標題欄顯示項目的Index以及其所在分欄。上面的代碼告訴你怎樣使用項目的點擊響應,對於你的實際應用是很有用的。
到這裡,這個演示程序就完成了,按下F5,你就可以看到如圖1一樣的效果了。
另外,ctlExplorerBar還支持標題分欄標題圖片和背景,同樣只要用兩個Image控件載入兩幅圖片,這裡我們命名為imgImages和imgBack,然後添加分欄時候使用如下代碼:
XPmenu.AddNormalItem "分欄示例", True, imgImages.Picture, imgBack.Picture
運行程序後我們可以看到實際的效果,多了標題圖片和背景(如圖3),是不是更漂亮呢?再試一試用AddSpecialItem方法來添加分欄,會有不一樣的效果哦:-)
有了ctlExplorerBar控件,我們可以很方便地做出漂亮美觀的界面,可以應用在信息顯示、導航等應用中,相信可以為你的程序添加更多的方便和亮點!