VB.NET菜單組件的實(shí)現(xiàn)方案
VB.NET在進(jìn)行實(shí)際編程中,有許多應(yīng)用技巧可以應(yīng)用于其中來(lái)提高編程人員的開(kāi)發(fā)效率。那么要想掌握這些技巧,就需要大家不斷的經(jīng)驗(yàn)積累以及學(xué)習(xí)才能滿(mǎn)足我們的需求。在這里就為大家提供一個(gè)應(yīng)用技巧,關(guān)于VB.NET菜單組件的實(shí)現(xiàn)。#t#
Windows應(yīng)用程序中往往離不開(kāi)菜單,菜單的應(yīng)用是十分普遍了,并且菜單的設(shè)計(jì)是十分簡(jiǎn)單的,這主要是因?yàn)樗呀?jīng)被編制成組件封裝在編程語(yǔ)言中可供直接調(diào)用。可是Web程序中要直接用到可供調(diào)用的菜單是不可能的,它要編寫(xiě)許多復(fù)雜的代碼。所以許多WEB程序設(shè)計(jì)者盡可能避免這些麻煩,用其它功能代替。
可是,這樣會(huì)影響WEB風(fēng)格甚至降低程序的水準(zhǔn)。事實(shí),我們同樣可以借簽Windows的菜單設(shè)計(jì)經(jīng)驗(yàn)開(kāi)發(fā)一個(gè)完整的Web菜單組件,全面封裝后供用戶(hù)直接調(diào)用,其使用的方便完全與Windows的菜單一樣。
本人在實(shí)踐中利用VBasic.net開(kāi)發(fā)出一個(gè)仿真WINDOW菜單,實(shí)現(xiàn)WEB上的多級(jí)VB.NET菜單組件。該組件具有靈活、動(dòng)態(tài)、多效果功能,用戶(hù)可以根據(jù)需要設(shè)計(jì)不同風(fēng)格的菜單,支持圖標(biāo),選擇行、菜單風(fēng)格的自設(shè)置;圖標(biāo)背景,背景圖片,前背景、動(dòng)態(tài)提示、字體、文字、快捷鍵等設(shè)置?,F(xiàn)在把它實(shí)現(xiàn)的方法及過(guò)程闡述如下:
實(shí)現(xiàn)原理:利用VBasic.Net強(qiáng)大的組件開(kāi)發(fā)功能,把每個(gè)菜單行作為一個(gè)結(jié)點(diǎn),設(shè)置結(jié)點(diǎn)的不同屬性。在VB.NET菜單組件的自定義事件中控制菜單所顯示的內(nèi)容,調(diào)用對(duì)應(yīng)功能。
開(kāi)發(fā)步驟如下:
一、啟動(dòng)VisualStudio.NET。在新建項(xiàng)目中選擇VisualBasic項(xiàng)目,在模板中選擇類(lèi)庫(kù),在名稱(chēng)中輸入類(lèi)庫(kù)文件名如MenuNode確定,則進(jìn)入類(lèi)庫(kù)開(kāi)發(fā)環(huán)境中,把Class1換名為MenuNode.
二、定義公共類(lèi)MenuNode,該類(lèi)為供應(yīng)用軟件調(diào)用。定義類(lèi)MenuNode的私有變量_ImageUrl,該變量表示結(jié)點(diǎn)圖片。定義類(lèi)MenuNode的屬性_ParentID,該屬性父結(jié)點(diǎn)號(hào),分別編寫(xiě)它們的功能。代碼如下:
- PublicClassMenuNode:InheritsTableCell
- Private_ImageUrlAsString
- Private_ParentIDAsInt16
- '父結(jié)點(diǎn)號(hào)
- PublicPropertyParentID()AsInt16
- Get
- ReturnViewState("_ParentID")
- EndGet
- Set(ByValValueAsInt16)
- ViewState("_ParentID")=Value
- DimaAsTableCell
- EndSet
- EndProperty
- '結(jié)點(diǎn)圖片
- PublicPropertyImageUrl()AsString
- Get
- ReturnViewState("_ImageUrl")
- EndGet
- Set(ByValValueAsString)
- ViewState("_ImageUrl")=Value
- EndSet
- EndProperty
- EndClass
VB.NET菜單組件相關(guān)實(shí)現(xiàn)方案就為大家介紹到這里。