掃二維碼與項(xiàng)目經(jīng)理溝通
我們在微信上24小時期待你的聲音
解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
本文向大家介紹VB.NET定制Windows控件,可能好多人還不了解VB.NET定制Windows控件,沒有關(guān)系,看完本文你肯定有不少收獲,希望本文能教會你更多東西。

創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),婁星企業(yè)網(wǎng)站建設(shè),婁星品牌網(wǎng)站建設(shè),網(wǎng)站定制,婁星網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,婁星網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
.NET是Microsoft公司提供解決未來計(jì)算需要的工具.在.NET Framework中提供了許多控件,可以解決編程中用戶界面的設(shè)計(jì)和實(shí)現(xiàn),但在實(shí)際應(yīng)用中可能需要對系統(tǒng)提供的控件進(jìn)行改進(jìn),如.NET的菜單不能帶圖形,下拉列表不能折行顯示。本文將介紹如何VB.NET定制Windows控件。
一 .NET中設(shè)計(jì)控件
.NET將控件放在UserControl對象上,可以自己編程繪制定制控件,也可以組合現(xiàn)有的控件形成復(fù)合控件或?qū)ΜF(xiàn)有控件進(jìn)行改進(jìn)。當(dāng)選擇建立Windows Control Library時系統(tǒng)自動創(chuàng)建一個類,代碼如下:
- Public Class UserControl
- Inherits System.Windows.Forms.UserControl
UserControl是控件名稱,需要時可以更改,UserControl是所有控件的父類,如果要對現(xiàn)有控件進(jìn)行改進(jìn),可以用現(xiàn)有控件類名代替UserControl。
在該類中可以用屬性過程實(shí)現(xiàn)控件的屬性,用公用過程實(shí)現(xiàn)控件的方法,如果要自己編程繪制控件,代碼應(yīng)放在OnPaint方法中。對于自畫控件編程用下面兩個方法:MeasureItem和DrawItem,MeasureItem事件確定發(fā)生繪圖過程的矩形尺寸,DrawItem事件中進(jìn)行繪制過程。該控件類編譯后生成DLL文件。
二 設(shè)計(jì)帶圖形的菜單
.NET中,MainMenu 控件表示窗體菜單結(jié)構(gòu)的容器。菜單由表示菜單結(jié)構(gòu)中單個菜單命令的MenuItem對象組成,每個MenuItem可以成為應(yīng)用程序的命令或其他子菜單項(xiàng)的父菜單,要設(shè)計(jì)帶圖形的菜單就要對MenuItem進(jìn)行定制。下面是一個定制的MenuItem的類代碼,在類中主要實(shí)現(xiàn)MeasureItem和DrawItem兩個事件:
- Public Class myMenuItem
- Inherits System.Windows.Forms.MenuItem
- Private m_picture As Image
- #Region
- …
- #End Region
- '下面代碼實(shí)現(xiàn)Picture屬性
- Public Property picture() As Image
- Get
- picture = m_picture
- End Get
- Set(ByVal Value As Image)
- m_picture = Value
- End Set
- End Property
以上介紹VB.NET定制Windows控件。
【編輯推薦】

我們在微信上24小時期待你的聲音
解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流