欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#?Winform消息通知系統(tǒng)托盤氣泡提示框ToolTip控件

 更新時(shí)間:2022年08月24日 08:52:06   作者:代碼迷途  
這篇文章主要為大家介紹了C#或Winform中的消息通知之系統(tǒng)托盤的氣泡提示框窗口(系統(tǒng)toast通知)、ToolTip控件和ToolTipText屬性詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

氣球狀提示框的介紹和系統(tǒng)通知變化

NotifyIcon控件表示系統(tǒng)右下角任務(wù)欄上的托盤圖標(biāo),其ShowBalloonTip方法用于顯示任務(wù)欄中一定時(shí)間的具有指定標(biāo)題、消息內(nèi)容和圖標(biāo)的氣球狀提示框(氣泡提示框)。

也可以通過NotifyIcon屬性BalloonTipIconBalloonTipText、BalloonTipText指定相關(guān)內(nèi)容。

單獨(dú)介紹它的變化,是因?yàn)樵赪in7及之前的系統(tǒng)中,該方法顯示提示為氣球狀的提示框,基本效果如下:

但是在Win10,氣球狀的提示框已經(jīng)該系統(tǒng)本地的toast通知效果取代,也就是,使用NotifyIcon的ShowBalloonTip方法,將會顯示系統(tǒng)本地通知,具體效果如下:

并且notifyIcon.ShowBalloonTip(timeout)第一個(gè)參數(shù)timeout,從Windows Vista開始,此參數(shù)已經(jīng)無效,通知的顯示時(shí)間基于系統(tǒng)的輔助功能設(shè)置,所以一般設(shè)置為0即可。

消息通知的提示

新建項(xiàng)目NotificationTrayToolTip,添加兩個(gè)按鈕,一個(gè)顯示,一個(gè)關(guān)閉,以及一個(gè)名為notifyIcon的NotifyIcon控件(初始可見性設(shè)置為false:notifyIcon.Visible = false;)。

設(shè)計(jì)器中為notifyIcon的Icon屬性指定一個(gè)圖標(biāo)文件。

ShowBalloonTip()方法及指定消息類型

顯示氣泡提示按鈕的點(diǎn)擊事件中,設(shè)置notifyIcon可見,并執(zhí)行ShowBalloonTip()方法,其第二個(gè)參數(shù)為標(biāo)題,第三個(gè)參數(shù)為消息內(nèi)容,最后一個(gè)為消息類型。

private void buttonPro1_Click(object sender, EventArgs e)
{
    notifyIcon.Visible = true;
    // timoeout參數(shù)已經(jīng)無效,通知的顯示時(shí)間基于系統(tǒng)的輔助功能設(shè)置
    notifyIcon.ShowBalloonTip(0, "消息標(biāo)題-Error", "這是一個(gè)錯(cuò)誤類型的消息內(nèi)容", ToolTipIcon.Error);
}

系統(tǒng)toast通知顯示內(nèi)容對應(yīng)notifyIcon控件的屬性或參數(shù):

關(guān)閉消息提示按鈕的點(diǎn)擊事件代碼中,設(shè)置Visible = false關(guān)閉系統(tǒng)提示:

private void buttonPro2_Click(object sender, EventArgs e)
{
    notifyIcon.Visible = false;
    //notifyIcon.Visible = true;
}

notifyIcon.Visible = false會清空所有相關(guān)的系統(tǒng)操作中心里面的消息通知。

NotifyIcon屬性設(shè)置消息

通過屬性也可以指定消息內(nèi)容、標(biāo)題、類型等:

notifyIcon.BalloonTipIcon = ToolTipIcon.Warning;
notifyIcon.BalloonTipText = "測試";
notifyIcon.BalloonTipTitle = "標(biāo)題";
notifyIcon.ShowBalloonTip(0);

BalloonTipIcon不同的消息類型

ToolTipIcon消息類型圖標(biāo)的取值有四種,和方法中的對應(yīng):

  • ToolTipIcon.Info
  • ToolTipIcon.Warning
  • ToolTipIcon.Error
  • ToolTipIcon.None

ToolTipText屬性

Winform中許多控件都提供有ToolTipText屬性,用于設(shè)置提示消息,用于在鼠標(biāo)位于控件上方(懸停)時(shí),顯示提示語。

通常都是容器控件的子控件項(xiàng)有這個(gè)屬性,用于提示不同的子項(xiàng)信息。

一般在設(shè)置子項(xiàng)控件的ToolTipText后,要想使提示生效,還需要設(shè)置父容器控件的ShowItemToolTips為true(DataGridViewShowCellToolTips屬性)。

如下,ToolStrip、MenuStrip1、ListView、DataGridView、TabControl等幾種控件啟用tip提示,并為子項(xiàng)設(shè)置不同的提示信息。

//必須設(shè)置ShowToolTips為true,當(dāng)鼠標(biāo)位于tab時(shí)顯示提示
tabControl1.ShowToolTips = true;
tabPage1.ToolTipText = "你好,我是tab提示";
dataGridView1.ShowCellToolTips = true;
dataGridView1[0, 0].ToolTipText = "單元格的tip";
toolStrip1.ShowItemToolTips = true;
toolStripLabel1.AutoToolTip = true;
toolStripLabel1.ToolTipText = "toolStrip1子項(xiàng)的提示";
menuStrip1.ShowItemToolTips = true;
menuStrip按鈕ToolStripMenuItem.AutoToolTip = true;
menuStrip按鈕ToolStripMenuItem.ToolTipText = "menuStrip1子項(xiàng)的提示";
listView1.ShowItemToolTips = true;
listView1.Items[0].ToolTipText = "我是listViewItem的提示";

接本效果如下:

但默認(rèn)提供的提示文本的顯示,并不及時(shí),并且,如果窗體不是焦點(diǎn)窗體,這些提示也都是無效的(而有的子項(xiàng),如果是激活狀態(tài),tip也會無效)

ToolTip提示控件顯式或主動的提示消息

通過ToolTip控件可以設(shè)置在哪個(gè)控件上顯示什么提示信息,以及通過事件觸發(fā)的方式(比如hover、鼠標(biāo)進(jìn)入、鍵盤按鍵),顯式的或多種條件下,展示提示框。

一個(gè)ToolTip同時(shí)為多個(gè)控件設(shè)置提示

ToolTip.SetToolTip(Control control, String caption)方法為指定control控件設(shè)置caption提示消息。

并且,一個(gè)ToolTip可以應(yīng)用多個(gè)控件。

toolTip.SetToolTip(button1, "我是按鈕1提示");
toolTip.SetToolTip(radioButton1, "單選提示,必需選擇");
toolTip.SetToolTip(buttonPro1, "使用ToolTip的提示");

顯式設(shè)置ToolTip

根據(jù)需要在事件中顯式的進(jìn)行提示:

button1.MouseEnter += Button1_MouseEnter;
//...
private void Button1_MouseEnter(object sender, EventArgs e)
{
    toolTip.SetToolTip(button1, "鼠標(biāo)進(jìn)入提示");
}

注:消息提示是跟隨鼠標(biāo)的,如果鼠標(biāo)未在控件位置上方,提示也不會顯示出來。

以上就是C# Winform消息通知系統(tǒng)托盤氣泡提示框ToolTip控件的詳細(xì)內(nèi)容,更多關(guān)于C# Winform消息通知?dú)馀萏崾究虻馁Y料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • c#如何實(shí)現(xiàn)接口事件

    c#如何實(shí)現(xiàn)接口事件

    這篇文章主要介紹了c#如何實(shí)現(xiàn)接口事件,幫助大家更好的理解和學(xué)習(xí)c#,感興趣的朋友可以了解下
    2020-10-10
  • C# 開發(fā)日志本地化工具

    C# 開發(fā)日志本地化工具

    這篇文章主要介紹了C# 開發(fā)日志本地化工具的步驟,幫助大家更好的理解和學(xué)習(xí)使用c#,感興趣的朋友可以了解下
    2021-02-02
  • C#實(shí)現(xiàn)學(xué)生成績管理系統(tǒng)

    C#實(shí)現(xiàn)學(xué)生成績管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了C#實(shí)現(xiàn)學(xué)生成績管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • c# 日歷控件的實(shí)現(xiàn)

    c# 日歷控件的實(shí)現(xiàn)

    這篇文章主要介紹了c# 實(shí)現(xiàn)日歷的示例代碼,幫助大家更好的理解和使用c#,感興趣的朋友可以了解下
    2020-12-12
  • C# Hashtable/Dictionary寫入和讀取對比詳解

    C# Hashtable/Dictionary寫入和讀取對比詳解

    本文中將從基礎(chǔ)角度講解HashTable、Dictionary的構(gòu)造和通過程序進(jìn)行插入讀取對比
    2013-11-11
  • c#對XML文檔的創(chuàng)建與增刪改查的示例代碼

    c#對XML文檔的創(chuàng)建與增刪改查的示例代碼

    這篇文章主要介紹了c#對XML文檔的創(chuàng)建與增刪改查的示例代碼,文中講解非常細(xì)致,幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • Unity3D基于OnGUI實(shí)時(shí)顯示FPS

    Unity3D基于OnGUI實(shí)時(shí)顯示FPS

    這篇文章主要介紹了Unity3D基于OnGUI實(shí)時(shí)顯示FPS,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • 詳解C# 反射(Reflection)

    詳解C# 反射(Reflection)

    這篇文章主要介紹了C# 反射(Reflection)的的相關(guān)資料,文中示例代碼非常詳細(xì),供大家參考和學(xué)習(xí),感興趣的朋友可以了解下
    2020-06-06
  • C# 6.0的屬性(Property)的語法與初始值詳解

    C# 6.0的屬性(Property)的語法與初始值詳解

    下面小編就為大家?guī)硪黄狢# 6.0的屬性(Property)的語法與初始值詳解。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-07-07
  • 你是不是這樣寫異常處理代碼的呢?

    你是不是這樣寫異常處理代碼的呢?

    本篇文章是對,你是不是這樣寫異常處理代碼的進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05

最新評論