vb.net窗體類 vbnet web窗體

用VB.NET輕松制作特效窗體

體是Windows應(yīng)用程序的基礎(chǔ) 新一代的開發(fā)工具Visual Basic Net為設(shè)計(jì)制作窗體提供了更多簡單而豐富的方法 無需再求助于復(fù)雜而易錯(cuò)的API函數(shù) 我們就可以輕松制作多種特效窗體 輕松制作透明窗體VB NET可以輕松制作出任一透明度的窗體 我們只要在窗體的 屬性 窗口中 將 Opacity 屬性設(shè)置為一個(gè)介于 (完全透明)與 (完全不透明)之間的值就可以了 Dim frm As FrmTrans = New FrmTrans()frm Opacity = frm ShowDialog() 輕松制作始終位于最上層的窗體在VB 中 要制作一個(gè)始終位于最上層的窗體我們只能求助于令人頭痛的API函數(shù) 然而在 NET 中 我們只要簡單設(shè)置窗體的 TopMost 屬性就可實(shí)現(xiàn)同樣效果了!例如 Dim frm As frmTopMost = New frmTopMost()frm TopMost = Truefrm Show() 輕松制作不可見的窗體如果要編寫一個(gè)不讓別人發(fā)現(xiàn)的隱藏程序 制作不可見的窗體就是必須實(shí)現(xiàn)的第一步 窗體的可見性通常由 Visible 屬性控制 但是 如果希望 Windows 應(yīng)用程序的主窗體在應(yīng)用程序啟動(dòng)時(shí)不可見 您將會(huì)發(fā)現(xiàn)將它的 Visible 屬性設(shè)置為 False 的方法無效 窗體總會(huì)自己顯示出來(這是因?yàn)?啟動(dòng)窗體的生存期決定了應(yīng)用程序的生存期) 雖然如此 我們還是可以通過簡單將應(yīng)用程序的啟動(dòng)設(shè)置為一個(gè)模塊 從而從窗體的生存期分出應(yīng)用程序的生存期 輕松實(shí)現(xiàn)不可見的窗體 在下面這個(gè)例子中 窗體在特定的時(shí)間內(nèi)自動(dòng)隱藏 ( )在 Visual Basic 中 右擊項(xiàng)目并選擇 添加模塊 以將模塊添加到 Windows 應(yīng)用程序 ( )在已添加的模塊(或類)內(nèi) 創(chuàng)建可作為項(xiàng)目啟動(dòng)對象的 Main 函數(shù) Sub main()Dim f As New Form ()f Visible = FalseWhile Hour(Date Now) 如果當(dāng)前時(shí)間早于 點(diǎn) 窗體自動(dòng)隱藏Application DoEvents()End Whilef ShowDialog()End Sub 輕松編寫托盤程序托盤程序作為一類特殊的窗體 其快捷圖標(biāo)顯示在系統(tǒng)托盤中 窗體本身則隱藏不可見 在 NET之前版本的VB中編寫托盤程序是十分困難的 但是VB NET提供的新的NotifyIcon組件卻使VB初學(xué)者也能輕松編寫一個(gè)這樣的程序 新建 Windows應(yīng)用程序 設(shè)置主窗體Opacity屬性為 FormBorderStyle屬性為None ShowInTaskbar屬性為False 這樣窗體將在啟動(dòng)后隱藏 在窗體上放置一個(gè)NotifyIcon組件NotifyIcon 一個(gè)ContextMenu(彈出菜單)組件ContextMenu 并根據(jù)需要為ContextMenu 添加菜單項(xiàng) 設(shè)置NotifyIcon 的ICON屬性 這個(gè)圖標(biāo)就是應(yīng)用程序出現(xiàn)在系統(tǒng)托盤中的快捷圖標(biāo) 設(shè)置NotifyIcon 的Text屬性為 VB NET托盤程序 這就是鼠標(biāo)移動(dòng)到托盤圖標(biāo)時(shí)彈出的文字說明 設(shè)置NotifyIcon 的ContextMenu屬性為ContextMenu 也就是右鍵單擊快捷圖標(biāo)時(shí)的彈出菜單為ContextMenu OK 按F 運(yùn)行!幾乎不用編寫代碼 一個(gè)托盤程序就這樣輕松實(shí)現(xiàn)了 lishixinzhi/Article/program/net/201311/13831

創(chuàng)新互聯(lián)建站是一家專業(yè)提供站前企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站建設(shè)、做網(wǎng)站、H5響應(yīng)式網(wǎng)站、小程序制作等業(yè)務(wù)。10年已為站前眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站設(shè)計(jì)公司優(yōu)惠進(jìn)行中。

如何給VB.NET窗體添加子窗體?

直接添加一個(gè)MID父窗體或在已有窗體的屬性中找到IsMDIContainer屬性,然后設(shè)置為True,然后創(chuàng)建第二個(gè)窗體 ,需要加載子窗體的時(shí)候:

Dim NewMDIChild As New Form2

NewMDIChild.MdiParent = Me

NewMDIChild.Show()

Public?Shared?Sub?CheckMDIChildForm(ByVal?MDIForm?As?Windows.Forms.Form,?ByVal?MDIChildForm?As?Windows.Forms.Form,?ByVal?MDIChildFormName?As?String)

If?MDIForm.MdiChildren.Length??1?Then

'如果沒有任何一個(gè)MDI子窗體,則創(chuàng)該MDI子窗體的窗體實(shí)例

Dim?MDIChildFrm?As?Windows.Forms.Form?=?MDIChildForm?'?定義MDI子窗體

MDIChildFrm.MdiParent?=?MDIForm?'指定父窗體

MDIChildFrm.Show()?'打開窗體

Exit?Sub

Else

Dim?x?As?Integer

Dim?frmyn?As?Boolean

For?x?=?0?To?(MDIForm.MdiChildren.Length)?-?1

Dim?tempChild?As?Windows.Forms.Form?=?CType(MDIForm.MdiChildren(x),?Windows.Forms.Form)

If?tempChild.Name?=?MDIChildFormName?Then

'檢測到有該MDI子窗體,設(shè)為激活?并退出循環(huán)

frmyn?=?True

tempChild.BringToFront()

Exit?For

Else

frmyn?=?False

End?If

Next

If?Not?frmyn?Then

'在打開的窗體中沒檢測到則新建

Dim?MDIChildFrm?As?Windows.Forms.Form?=?MDIChildForm?'?定義MDI子窗體

MDIChildFrm.MdiParent?=?MDIForm?'指定父窗體

MDIChildFrm.Show()?'打開窗體

End?If

End?If

End?Sub

用VB.NET設(shè)計(jì)各種形狀的窗體界面二

結(jié)合上一節(jié)介紹的方法 通過Visual Basic Net的菜單設(shè)計(jì)器 按照圖 和圖 所示的菜單結(jié)構(gòu)設(shè)計(jì)菜單   圖 【MDI編程】項(xiàng)目的菜單結(jié)構(gòu)之一   圖 【MDI編程】項(xiàng)目的菜單結(jié)構(gòu)之二 在利用菜單設(shè)計(jì)器設(shè)計(jì)完菜單后 分別在窗體中雙擊 新建 退出 層疊顯示 橫行平鋪 縱向平鋪 和 排列圖標(biāo) 菜單項(xiàng) 這樣Visual Basic Net會(huì)在Form vb文件中分別產(chǎn)生這些菜單項(xiàng)的Click事件對應(yīng)的處理代碼 設(shè)定Form 的 IsMdiContainer 屬性值為 True 這把Form 窗體定義為MDI窗體容器 這一步設(shè)置是后面編程的基礎(chǔ) 當(dāng)設(shè)置此屬性值后 Form 的窗體也發(fā)生了改變 圖 是設(shè)置此屬性后的窗體模樣   圖 把Form 窗體設(shè)置為MDI窗體容器后的模樣 選中圖 中的 窗口 菜單項(xiàng) 并設(shè)置此菜單項(xiàng)的 MdiList 屬性值為 True 其作用是當(dāng)程序運(yùn)行后 如果新建了一個(gè)MDI窗體 就會(huì)在 窗口 菜單項(xiàng)后 自動(dòng)加入一個(gè)以新建MDI窗體名稱命名的菜單項(xiàng) 如果新建了多個(gè)MDI窗體 則會(huì)在 窗口 菜單項(xiàng)后 會(huì)加入以這些MDI窗體名稱命名的菜單項(xiàng) 當(dāng)MDI窗體被關(guān)閉 那些以此MDI窗體命名的菜單項(xiàng)也會(huì)自動(dòng)刪除 具體可圖 所示 把Visua Basic Net的當(dāng)前窗口切換到Form vb的代碼編輯窗口 并在定義Form 中組件的代碼區(qū)加入下列代碼 下列代碼是定義一個(gè)變量 此變量用以統(tǒng)計(jì)程序中新建MDI窗體的數(shù)量 Private iFormCount As Integer = 用下列代碼替換Form vb中的MenuItem 的Click事件對應(yīng)的處理代碼 MenuItem 即為圖 中的 新建 菜單項(xiàng) 下列代碼的作用是在新建一個(gè)MDI窗體 Private Sub MenuItem _Click ( ByVal sender As System Object ByVal e As System EventArgs ) Handles MenuItem ClickDim frmTemp As Form = New Form ( ) 新建一個(gè)窗體frmTemp MdiParent = Me 為當(dāng)前創(chuàng)建的窗體設(shè)置MDI父窗體frmTemp Text = MDI窗體 + iFormCount ToString ( )iFormCount = iFormCount + frmTemp Show ( ) 把此MDI窗體顯示出來End Sub 用下列代碼替換Form vb中的MenuItem 的Click事件對應(yīng)的處理代碼 MenuItem 即為圖 中的 退出 菜單項(xiàng) 下列代碼的作用是退出應(yīng)用程序 Private Sub MenuItem _Click ( ByVal sender As System Object ByVal e As System EventArgs ) Handles MenuItem ClickApplication Exit ( ) 退出應(yīng)用程序End Sub 用下列代碼替換Form vb中的MenuItem 的Click事件對應(yīng)的處理代碼 MenuItem 即為圖 中的 層疊顯示 菜單項(xiàng) 下列代碼的作用是層疊排列窗體中的所有MDI窗體 Private Sub MenuItem _Click ( ByVal sender As System Object ByVal e As System EventArgs ) Handles MenuItem ClickMe LayoutMdi ( MdiLayout Cascade ) 層疊排列窗體中的所有MDI窗體End Sub 用下列代碼替換Form vb中的MenuItem 的Click事件對應(yīng)的處理代碼 MenuItem 即為圖 中的 水平平鋪 菜單項(xiàng) 下列代碼的作用是水平平鋪窗體中的所有MDI窗體 Private Sub MenuItem _Click ( ByVal sender As System Object ByVal e As System EventArgs ) Handles MenuItem ClickMe LayoutMdi ( MdiLayout TileHorizontal ) 水平平鋪窗體中的所有MDI窗體End Sub 用下列代碼替換Form vb中的MenuItem 的Click事件對應(yīng)的處理代碼 MenuItem 即為圖 中的 垂直平鋪 菜單項(xiàng) 下列代碼的作用是垂直平鋪窗體中的所有MDI窗體 Private Sub MenuItem _Click ( ByVal sender As System Object ByVal e As System EventArgs ) Handles MenuItem ClickMe LayoutMdi ( MdiLayout TileVertical ) 垂直平鋪窗體中的所有MDI窗體End Sub 用下列代碼替換Form vb中的MenuItem 的Click事件對應(yīng)的處理代碼 MenuItem 即為圖 中的 排列圖標(biāo) 菜單項(xiàng) 下列代碼的作用是窗體中的所有MDI窗體排列圖標(biāo) Private Sub MenuItem _Click ( ByVal sender As System Object ByVal e As System EventArgs ) Handles MenuItem ClickMe LayoutMdi ( MdiLayout ArrangeIcons ) 窗體中的所有MDI窗體排列圖標(biāo)End Sub至此【MDI編程】項(xiàng)目的全部工作就完成了 圖 圖 和圖 是程序運(yùn)行后的界面   圖 【MDI編程】運(yùn)行界面之一   圖 【MDI編程】運(yùn)行界面之二 圖 【MDI編程】運(yùn)行界面之三 此時(shí)我們注意到圖 所示的 窗口 菜單中增加許多子菜單 而在程序設(shè)計(jì)時(shí) 并沒有處理這些功能的代碼 這是由于第十一步中設(shè)置 窗口 菜單項(xiàng)的 MdiList 屬性值為 True 造成的 可見正確的設(shè)置組件的屬性值有時(shí)的確能夠代替煩雜的代碼編寫工作 五 總結(jié) 本文主要內(nèi)容有二個(gè) 其一是介紹的在Visual Basic Net定制不規(guī)則窗體的實(shí)現(xiàn)方法 在Visual Basic Net中創(chuàng)建不規(guī)則窗體主要使用的是Region類和GraphicsPath類 GraphicsPath主要是繪制窗體的形狀 Region主要是以GraphicsPath來構(gòu)建窗體 結(jié)合本文的實(shí)現(xiàn)思路和具體方法 我想對于其他形狀的窗體 在掌握GraphicsPath類提供的使用方法的前提下 加上對所要?jiǎng)?chuàng)建不規(guī)則窗體的規(guī)劃設(shè)計(jì) 用Visual Basic Net實(shí)現(xiàn)起來應(yīng)該不算很困難 本文的另外一個(gè)主要內(nèi)容就是介紹在Visual Basic Net編寫MDI應(yīng)用程序的基本過程 技巧和注意事項(xiàng) 通過本文的介紹可見Visual Basic Net的MDI編程并沒有什么復(fù)雜的地方 只需了解一些對MDI窗體處理的方法及其調(diào)用方式 當(dāng)然更重要的是要了解并掌握某些組件的針對MDI的屬性及其設(shè)置方式 lishixinzhi/Article/program/net/201311/11698

新聞名稱:vb.net窗體類 vbnet web窗體
URL分享:http://muchs.cn/article12/hgijgc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站服務(wù)器托管、營銷型網(wǎng)站建設(shè)手機(jī)網(wǎng)站建設(shè)、定制開發(fā)、響應(yīng)式網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)