用WPF實(shí)現(xiàn)屏幕文字提示的實(shí)現(xiàn)方法
更新時(shí)間:2013年07月26日 10:36:42 作者:
本文介紹WPF應(yīng)用程序?qū)崿F(xiàn)在屏幕上顯示一行或多行文字通知。它沒(méi)有標(biāo)題欄和最大化最小化等按鈕,可以有半透明背景以使文字的顯示更清晰,鼠標(biāo)點(diǎn)擊后提示消失。
1. 新建一個(gè)WPF Application。
2. 將Window的WindowStyle屬性設(shè)置為"None"去掉標(biāo)題欄,將AllowsTransparency屬性設(shè)置為"True"允許透明,Topmost屬性設(shè)置為"True"使提示文字顯示在頂層,Background屬性設(shè)置為"#00000000"使窗口透明。
3. 設(shè)置Grid的Background屬性。如顯示黑色文字提示,可使用半透明白色背景。透明的效果如果由Opacity屬性產(chǎn)生會(huì)使該容器內(nèi)的其他元素也有透明效果。比較簡(jiǎn)單的方法是通過(guò)Background屬性的前兩位來(lái)設(shè)置透明度。
4. 給Window的MouseLeave、MouseDown、MouseEnter事件添加處理方法。添加MouseEnter和MouseLeave事件的處理方法是為了讓鼠標(biāo)劃入提示區(qū)域時(shí)加深背景透明度,鼠標(biāo)劃出提示區(qū)域時(shí)減小背景透明度。MouseDown事件的處理方法使鼠標(biāo)點(diǎn)擊提示區(qū)域后取消提示。
代碼
/// <summary>
/// 鼠標(biāo)移入處理方法
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Window_MouseEnter(object sender, MouseEventArgs e)
{
Brush brush = new SolidColorBrush(Color.FromArgb(0x78,0xFF,0xFF,0xFF)); // 創(chuàng)建一個(gè)純色brush
grid.Background = brush; // 應(yīng)用于grid
}
/// <summary>
/// 鼠標(biāo)移出處理方法
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Window_MouseLeave(object sender, MouseEventArgs e)
{
Brush brush = new SolidColorBrush(Color.FromArgb(0x52, 0xFF, 0xFF, 0xFF)); // 創(chuàng)建一個(gè)純色brush
grid.Background = brush; // 應(yīng)用于grid
}
/// <summary>
/// 鼠標(biāo)按下處理方法
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Window_MouseDown(object sender, MouseButtonEventArgs e)
{
mainWindow.Close(); // 或者使用mainWindow.Hide()隱藏窗口
}
本文適用于 .NET Framework 4
2. 將Window的WindowStyle屬性設(shè)置為"None"去掉標(biāo)題欄,將AllowsTransparency屬性設(shè)置為"True"允許透明,Topmost屬性設(shè)置為"True"使提示文字顯示在頂層,Background屬性設(shè)置為"#00000000"使窗口透明。
3. 設(shè)置Grid的Background屬性。如顯示黑色文字提示,可使用半透明白色背景。透明的效果如果由Opacity屬性產(chǎn)生會(huì)使該容器內(nèi)的其他元素也有透明效果。比較簡(jiǎn)單的方法是通過(guò)Background屬性的前兩位來(lái)設(shè)置透明度。
4. 給Window的MouseLeave、MouseDown、MouseEnter事件添加處理方法。添加MouseEnter和MouseLeave事件的處理方法是為了讓鼠標(biāo)劃入提示區(qū)域時(shí)加深背景透明度,鼠標(biāo)劃出提示區(qū)域時(shí)減小背景透明度。MouseDown事件的處理方法使鼠標(biāo)點(diǎn)擊提示區(qū)域后取消提示。
復(fù)制代碼 代碼如下:
代碼
/// <summary>
/// 鼠標(biāo)移入處理方法
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Window_MouseEnter(object sender, MouseEventArgs e)
{
Brush brush = new SolidColorBrush(Color.FromArgb(0x78,0xFF,0xFF,0xFF)); // 創(chuàng)建一個(gè)純色brush
grid.Background = brush; // 應(yīng)用于grid
}
/// <summary>
/// 鼠標(biāo)移出處理方法
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Window_MouseLeave(object sender, MouseEventArgs e)
{
Brush brush = new SolidColorBrush(Color.FromArgb(0x52, 0xFF, 0xFF, 0xFF)); // 創(chuàng)建一個(gè)純色brush
grid.Background = brush; // 應(yīng)用于grid
}
/// <summary>
/// 鼠標(biāo)按下處理方法
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Window_MouseDown(object sender, MouseButtonEventArgs e)
{
mainWindow.Close(); // 或者使用mainWindow.Hide()隱藏窗口
}
本文適用于 .NET Framework 4
相關(guān)文章
一天精通asp.net的學(xué)習(xí)經(jīng)驗(yàn)小結(jié)
一天精通asp.net的學(xué)習(xí)經(jīng)驗(yàn)小結(jié)2010-02-02ASP.NET通過(guò)第三方網(wǎng)站Bitly實(shí)現(xiàn)短鏈接地址程序
這篇文章主要介紹了ASP.NET通過(guò)第三方網(wǎng)站Bitly實(shí)現(xiàn)短鏈接地址程序的步驟,需要的朋友可以參考下。2016-06-06asp.net fileupload 實(shí)現(xiàn)上傳
在vs的視圖模式下,添加上傳組件,以及添加一個(gè)按鈕button,隨后在后置代碼中加入如下信息2009-05-05解決asp.net core在輸出中文時(shí)亂碼的問(wèn)題
最近在學(xué)習(xí)asp.net core的時(shí)候,嘗試在控制臺(tái),或者頁(yè)面上輸出中文,會(huì)出現(xiàn)亂碼的問(wèn)題。那么這該如何解決呢?下面通過(guò)這篇文章來(lái)一起看看吧,文中給出了詳細(xì)的解決方法,相信對(duì)大家有一定的參考價(jià)值。2016-12-12ASP.NET實(shí)現(xiàn)級(jí)聯(lián)下拉框效果實(shí)例講解
這篇文章主要為大家詳細(xì)介紹了ASP.NET實(shí)現(xiàn)級(jí)聯(lián)下拉框效果實(shí)例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2015-09-09淺談.Net并行計(jì)算之?dāng)?shù)據(jù)并行
這篇文章主要介紹了.Net并行計(jì)算之?dāng)?shù)據(jù)并行,有需要的朋友可以參考一下2013-12-12關(guān)于.NET動(dòng)態(tài)代理的介紹和應(yīng)用簡(jiǎn)介
關(guān)于.NET動(dòng)態(tài)代理的介紹和應(yīng)用簡(jiǎn)介...2006-09-09