国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
vb.net入門--NotifyIcon 組件的使用

vb.net入門--NotifyIcon 組件的使用

【字體大?。?a accesskey="1" href="javascript:SetFont('12px')">小 2008-02-18 19:57 來源: 作者: 

在vb6.0中,我們想要在把我們的程序以一個(gè)小圖標(biāo)顯示在Windows桌面的應(yīng)用程序托盤區(qū)(即任務(wù)欄的狀態(tài)通知區(qū)域,以下都稱系統(tǒng)托盤區(qū)),需要使用到復(fù)雜難懂的API函數(shù)來完成,而且在測(cè)試的時(shí)候還經(jīng)常導(dǎo)致應(yīng)用程序崩潰。現(xiàn)在用vb.net就好辦多了,vb.net提供了一個(gè) NotifyIcon 組件來讓我們可以輕松完成這個(gè)工作。

NotifyIcon 組件在vb.net工具箱中如下圖一所示:

當(dāng)從工具箱中把 NotifyIcon 組件拖放到窗體上時(shí),NotifyIcon 組件顯示在窗體下方的組件欄中。一個(gè) NotifyIcon 組件在系統(tǒng)托盤區(qū)對(duì)應(yīng)顯示一個(gè)圖標(biāo),想要顯示多個(gè)圖標(biāo)的話,則需要在窗體上布置多個(gè) NotifyIcon 組件。

一、NotifyIcon 組件常用屬性和事件

NotifyIcon 組件的屬性和方法比較少。

1、ContextMenu 屬性:用于指定與 NotifyIcon 組件相關(guān)聯(lián)的上下文菜單

2、Icon 屬性:用于設(shè)置 NotifyIcon 組件在系統(tǒng)托盤區(qū)顯示的圖標(biāo),注意它只支持ICO圖標(biāo)文件。

3、Text 屬性:設(shè)置當(dāng)鼠標(biāo)移動(dòng)到圖盤區(qū)的小圖標(biāo)是顯示的提示文本。

4、Visible 屬性:用于指示在系統(tǒng)托盤區(qū)顯示小圖標(biāo)是否可見。

NotifyIcon 組件只響應(yīng)的鼠標(biāo)事件。

二、示例

我們這里來演示如何利用 NotifyIcon 組件為自己的應(yīng)用程序建立一個(gè)系統(tǒng)托盤圖標(biāo)。

1、首先把一個(gè) NotifyIcon 組件,一個(gè)上下文菜單組件 ContextMenu(關(guān)于菜單控件的使用點(diǎn)擊看這里)。

2、為 NotifyIcon 組件設(shè)置顯示的圖標(biāo):

在屬性窗口中選擇"Icon"屬性,然后單擊

,在本地硬盤上找到合適的圖標(biāo)即可,也可以使用代碼在合適的位置添加,代碼添加如下所示:(假設(shè)圖標(biāo)文件存放在C盤下)

NotifyIcon1.Icon = New System.Drawing.Icon("c:\Icon.ico")

3、關(guān)聯(lián)右鍵菜單:

使用 ContextMenu 屬性來關(guān)聯(lián)它的右鍵菜單。在屬性窗口的"ContextMenu"中選擇 ContextMenu1 組件

也可以在窗體的New事件中進(jìn)行關(guān)聯(lián),代碼如下:

NotifyIcon1.ContextMenu = ContextMenu1

4、為右鍵菜單 ContextMenu1 組件添加菜單項(xiàng)。如下圖二所示:

并為每個(gè)菜單項(xiàng)添加代碼,完整的菜單項(xiàng)代碼如下所示:

Private Sub MenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem1.Click

Me.Show()'顯示窗體

End Sub

Private Sub MenuItem2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem2.Click

Me.Hide()'隱藏窗體

End Sub

為了讓"顯示"菜單在窗體時(shí)顯示狀態(tài)下不可用,"隱藏"菜單在窗體隱藏狀態(tài)下不可用,我們?cè)贑ontextMenu1的Popup事件中加入如下代碼:

Private Sub ContextMenu1_Popup(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ContextMenu1.Popup

If Me.Visible = False Then

MenuItem1.Enabled = True

MenuItem2.Enabled = False

ElseIf Me.Visible = True Then

MenuItem1.Enabled = False

MenuItem2.Enabled = True

End If

End Sub

運(yùn)行,將會(huì)在系統(tǒng)托盤區(qū)顯示我們的圖標(biāo),如下圖三所示:

我們通過彈出菜單上的"隱藏"\"顯示"就可以進(jìn)行相應(yīng)的操作了。

以上我們實(shí)現(xiàn)的右鍵菜單的功能,我們還可以在圖標(biāo)的單擊事件中響應(yīng)鼠標(biāo)的左鍵事件,下面的例子演示了如何實(shí)現(xiàn)單擊彈出左鍵菜單。

因?yàn)?ContextMenu 組件是默認(rèn)關(guān)聯(lián)鼠標(biāo)的右擊事件的,所以我們需要通過其它的途徑來實(shí)現(xiàn)左擊菜單。

現(xiàn)在窗體上建立一個(gè)名為 ContextMenu2 的菜單,菜單項(xiàng)如下圖四所示:

由于不能在notifyIcon上直接顯示上下文菜單,只有創(chuàng)建一個(gè)Control作為容器來顯示菜單,詳細(xì)代碼如下所示:

Private Sub NotifyIcon1_MouseDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles NotifyIcon1.MouseDown

If e.Button = MouseButtons.Left Then

Dim control As New Control(Nothing, control.MousePosition.X, control.MousePosition.Y, 1, 1)

control.Visible = True

control.CreateControl()

Dim pos As New Point(0, 0) '這里的兩個(gè)數(shù)字要根據(jù)你的上下文菜單大小適當(dāng)?shù)卣{(diào)整

Me.ContextMenu2.Show(control, pos)

End If

End Sub

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
VB.NET編寫托盤程序經(jīng)驗(yàn)雜談 - 51CTO.COM
VB.NET編寫托盤程序
C#winform中怎么將程序最小化到系統(tǒng)托盤
C# 系統(tǒng)托盤 控件NotifyIcon
VB6.0實(shí)現(xiàn)將窗體最小化到托盤區(qū)
vb.net實(shí)現(xiàn)窗體圖標(biāo)最小化到狀態(tài)欄
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服