vb.net入門——ToolTip 組件的使用在vb.net中,已經(jīng)取消了以前版本中控件的ToolTip屬性,以 ToolTip 組件來(lái)代替,ToolTip 作為一個(gè)單獨(dú)的類,可以讓開(kāi)發(fā)人員更加方便的對(duì)它進(jìn)行重寫(xiě)。這里我們就來(lái)介紹它的基本使用方法。 在vb.net工具箱中,ToolTip 組件的圖標(biāo)如下圖一所示:
一、ToolTip 組件的常用屬性為: 1、Active 屬性:指示工具提示當(dāng)前是否活動(dòng),其默認(rèn)值為True,只有活動(dòng)的工具提示被激活(即Active屬性為True)的時(shí)候,才會(huì)顯示提示。 2、AutomaticDelay 屬性:工具提示的自動(dòng)延遲(以毫秒計(jì)),默認(rèn)值為 500。 AutoPopDelay 屬性:當(dāng)鼠標(biāo)指針在控件內(nèi)保持靜止時(shí),ToolTip 保持可見(jiàn)的時(shí)段(以毫秒計(jì)),默認(rèn)值為 5000。 InitialDelay 屬性:工具提示”窗口顯示之前,鼠標(biāo)指針必須在控件內(nèi)保持靜止的時(shí)間(以毫秒計(jì))。 ReshowDelay 屬性:該屬性能夠改變前面的工具提示顯示后、顯示另一“工具提示”窗口前,ToolTip 等待的時(shí)間。 “工具提示”窗口首次顯示時(shí),InitialDelay 屬性的值用來(lái)確定最初顯示“工具提示”窗口前應(yīng)用的延遲。如果當(dāng)前正在顯示“工具提示”窗口,并且用戶將光標(biāo)移到另一個(gè)顯示“工具提示”窗口的控件上,則會(huì)在顯示新控件的工具提示前使用 ReshowDelay 屬性的值。為了使用 ReshowDelay 屬性中指定的延遲,必須仍然顯示前一個(gè)控件的“工具提示”窗口;否則將使用 InitialDelay 屬性的值。 如果需要一致的“工具提示”窗口延遲模式,則可以設(shè)置 AutomaticDelay 屬性。AutomaticDelay 屬性將 AutoPopDelay、ReshowDelay 和 InitialDelay 屬性設(shè)置為基于單個(gè)時(shí)間值的初始值。每次設(shè)置 AutomaticDelay 屬性,ReshowDelay 屬性就會(huì)被設(shè)置為 AutomaticDelay 屬性值的 1/5。在設(shè)置 AutomaticDelay 屬性以后,就可以獨(dú)立設(shè)置 ReshowDelay 屬性(重寫(xiě)默認(rèn)值)。 關(guān)于 ToolTip 組件的這些設(shè)置延遲顯示的屬性,我們只有在一些很特殊的情況下才用到,所以只對(duì)它們做個(gè)說(shuō)明,具體設(shè)置可以在屬性窗口中設(shè)置,或者自行用代碼設(shè)置,需要注意的是它們都是以毫秒為單位的。 3、ShowAlways 屬性:該屬性決定“工具提示”窗口在其父控件不活動(dòng)時(shí)是否顯示,如果始終顯示工具提示,則為 true;否則為 false。默認(rèn)值為 false。這個(gè)屬性在以下情況比較有用: 1)、在無(wú)模式窗口應(yīng)用程序中,使“工具提示”窗口無(wú)論在哪個(gè)無(wú)模式窗口處于活動(dòng)狀態(tài)時(shí)都能顯示。 2)、在使用包含許多控件(這些控件都可顯示“工具提示”窗口)的 UserControl 創(chuàng)建控件時(shí)使用此功能。由于 UserControl 通常是窗體上的不活動(dòng)窗口,將此屬性設(shè)置為 true 會(huì)使 UserControl 內(nèi)的控件在任何時(shí)間都能顯示“工具提示”窗口。 二、常用方法: 1、GetToolTip 方法:獲取與指定控件關(guān)聯(lián)的工具提示文本。用法為: str=ToolTip1.GetToolTip(control) 2、SetToolTip 方法:使工具提示文本與指定的控件相關(guān)聯(lián),我們可以用它來(lái)多次改變同一個(gè)控件的工具提示文本,用法如下,下例把Button1按鈕的工具提示文本修改為“工具提示文本”: ToolTip1.SetToolTip(Button1, "工具提示文本") 3、RemoveAll 方法:移除當(dāng)前與工具提示控件關(guān)聯(lián)的所有工具提示文本。 三、如何使用 ToolTip 組件: 1、在屬性窗口中為其它控件關(guān)聯(lián)工具提示文本。 首先在窗體中拖放一個(gè) ToolTip 組件,它將會(huì)顯示在組件欄中。現(xiàn)在我們要為Button1按鈕設(shè)置工具提示文本(假設(shè)窗體上有這么一個(gè)按鈕),選中它,然后在它的屬性窗口中找到“ToolTip1 上的 ToolTip”屬性,把值設(shè)置我們需要提示的文本即可,如下圖二所示: 其它控件的設(shè)置也一樣,窗體的工具提示文本也是這么設(shè)置的。 提示:一個(gè) ToolTip 組件可以為多個(gè)控件提供工具提示,所以一個(gè)窗體上我們放置一個(gè) ToolTip 組件即可;如果不想讓某個(gè)控件顯示工具提示,則使該控件的“ToolTip1 上的 ToolTip”屬性值為空。 2、用代碼來(lái)為控件關(guān)聯(lián)工具提示 我們可以通過(guò)SetToolTip 方法來(lái)在代碼中靈活關(guān)聯(lián)或修改控件的工具提示文本。下面我們用一個(gè)實(shí)例來(lái)了解它的應(yīng)用。 首先在窗體上拖放一個(gè)Label控件,一個(gè)TextBox控件,兩個(gè)Button控件,一個(gè)ToolTip 組件,窗體的布局如下圖三所示:
現(xiàn)在為示例添加代碼: 在“添加提示”按鈕的Click事件中添加如下代碼,檢索窗體中所有的控件,并關(guān)聯(lián)上工具提示文本: Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim cl As Control For Each cl In Me.Controls ToolTip1.SetToolTip(cl, cl.Text) Next End Sub 在“移除提示”按鈕的Click事件中添加代碼,以移除所有控件的工具提示文本: Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click ToolTip1.RemoveAll() End Sub 注意:如果要移除單個(gè)控件的工具提示文本則可以使用如下代碼: oolTip1.SetToolTip(Button1, "")' 運(yùn)行,先不要單擊“添加提示”按鈕,現(xiàn)在我們把鼠標(biāo)放置在任意控件上,并不會(huì)出現(xiàn)任何的工具提示。 然后單擊“添加提示”按鈕,把鼠標(biāo)放到任意控件上,就會(huì)出現(xiàn)一個(gè)工具提示,提示的文本為該控件的Text屬性的文本,如下圖四所示:
到這里我們就了解了 ToolTip 組件的基本應(yīng)用,因?yàn)樗且粋€(gè)單獨(dú)的類,我們還可以進(jìn)一步深入對(duì)它相關(guān)的屬性進(jìn)行重寫(xiě)來(lái)達(dá)到更加豐富的目的,但是不是在這里談?wù)摰姆秶?,你可以到巧巧讀書(shū)網(wǎng)學(xué)習(xí)vb.net更多的知識(shí)。 |
|
|
來(lái)自: nxhujiee > 《vb.net控件》