講述VB.NET制作透明窗體
VB.NET有很多值得學習的地方,這里我們主要介紹VB.NET制作透明窗體,包括介紹輕松編寫托盤程序托盤程序作為一類特殊的窗體等方面。
窗體是Windows應用程序的基礎。新一代的開發(fā)工具Visual Basic.Net為設計制作窗體提供了更多簡單而豐富的方法,無需再求助于復雜而易錯的API函數(shù),我們就可以輕松制作多種特效窗體。
1、VB.NET制作透明窗體,VB.NET可以輕松制作出任一透明度的窗體:我們只要在窗體的“屬性”窗口中,將 Opacity 屬性設置為一個介于 0.0(完全透明)與 1.0(完全不透明)之間的值就可以了:
- Dim frm As FrmTrans = New FrmTrans()
- frm.Opacity = 0.5
- frm.ShowDialog()
2、輕松制作始終位于最上層的窗體在VB6中,要制作一個始終位于最上層的窗體我們只能求助于令人頭痛的API函數(shù)。然而在 .NET 中,我們只要簡單設置窗體的 TopMost 屬性就可實現(xiàn)同樣效果了!例如:
- Dim frm As frmTopMost = New frmTopMost()
- frm.TopMost = True
- frm.Show()
3、VB.NET制作透明窗體,如果要編寫一個不讓別人發(fā)現(xiàn)的隱藏程序,制作透明窗體就是必須實現(xiàn)的***步。窗體的可見性通常由 Visible 屬性控制。但是,如果希望 Windows 應用程序的主窗體在應用程序啟動時透明窗體,您將會發(fā)現(xiàn)將它的 Visible 屬性設置為 False 的方法無效,窗體總會自己顯示出來(這是因為,啟動窗體的生存期決定了應用程序的生存期)。雖然如此,我們還是可以通過簡單將應用程序的啟動設置為一個模塊,從而從窗體的生存期分出應用程序的生存期,VB.NET制作透明窗體。在下面這個例子中,窗體在特定的時間內自動隱藏:
1).在 Visual Basic 中,右擊項目并選擇“添加模塊”以將模塊添加到 Windows 應用程序。
2).在已添加的模塊(或類)內,創(chuàng)建可作為項目啟動對象的 Main 函數(shù):
- Sub main()
- Dim f1 As New Form1()
- f1.Visible = False
- While Hour(Date.Now) < 15
- ‘如果當前時間早于15點,窗體自動隱藏
- Application.DoEvents()
- End While
- f1.ShowDialog()
- End Sub
4、輕松編寫托盤程序托盤程序作為一類特殊的窗體,其快捷圖標顯示在系統(tǒng)托盤中,窗體本身則隱藏透明窗體。在.NET之前版本的VB中編寫托盤程序是十分困難的,但是VB.NET提供的新的NotifyIcon組件卻使VB初學者也能輕松編寫一個這樣的程序:新建“Windows應用程序”,設置主窗體 Opacity屬性為0,F(xiàn)ormBorderStyle屬性為None,ShowInTaskbar屬性為False,這樣窗體將在啟動后隱藏。在窗體上放置一個NotifyIcon組件NotifyIcon1,一個ContextMenu(彈出菜單)組件ContextMenu1,并根據(jù)需要為 ContextMenu1添加菜單項。
設置NotifyIcon1的ICON屬性,這個圖標就是應用程序出現(xiàn)在系統(tǒng)托盤中的快捷圖標;設置NotifyIcon1的Text屬性為“VB.NET托盤程序”,這就是鼠標移動到托盤圖標時彈出的文字說明;設置NotifyIcon1的 ContextMenu屬性為ContextMenu1,也就是右鍵單擊快捷圖標時的彈出菜單為ContextMenu1.OK,按F5運行!
【編輯推薦】