巧用句柄函数:闪烁窗体,做提示功能时很有用哦
今天再給大家分享一個小程序!
大家都知道、在一個Dialog窗體顯示后、如果不關閉這個Dialog窗體、直接點擊該程序別的功能、那么這個Dialog窗體就會閃動一下、并且有一個提示聲音、表示當前的窗體不關閉、將不能使用該程序的其他功能、
那么、我們想一下、閃爍窗體的功能只能用在Dialog窗體上面么?
我們能不能把閃爍窗體的功能提取出來、加在我們想用來提示的窗體上面?
答案:當然可以、、、OK、開始步入正題、、、、
新建WinForm項目、命名為“ShanFormWithAPI”、
在默認的窗體上拖放三個Button按鈕,分別命名為:“btn_start_once”(閃爍一下)、“btn_start”(開始閃爍)、“btn_stop”(停止閃爍)、
在拖放一個Timer、用來實現不停閃爍的效果、Timer控件命名為:“timer_shan”、Interval設置為50(自己可以根據需求設置)、Enable設置為false(不讓自動開始)、
?
按下F7進入當前窗體的后置代碼、引用以下命名空間:
需要引入的命名空間 1 using System; 2 using System.Windows.Forms; 3 using System.Media; 4 using System.Runtime.InteropServices;?
然后、在當前窗體后置代碼類中(默認無參構造外)引用系統API函數、用來閃爍窗體用的,代碼如下:
引用系統API后的局部代碼 1 using System; 2 using System.Windows.Forms; 3 using System.Media; 4 using System.Runtime.InteropServices; 5 6 namespace ShanFormWithAPI 7 { 8 public partial class frmMain : Form 9 { 10 //handle:表示將要閃爍的窗體;bInvert:是否恢復狀態。 11 [DllImportAttribute("user32.dll")] 12 public static extern bool FlashWindow(IntPtr handle, bool bInvert); 13 14 //默認的無參構造 15 public frmMain() 16 { 17 InitializeComponent(); 18 } 19 } 20 }
按下Shift+F7、回到窗體的設計界面、分別雙擊三個按鈕、為其添加事件效果、最后完整的代碼如下:
好了、運行一下看看效果吧、、、
至此、這個小程序就寫完了、感謝您的光臨與支持!
?
【原來來自:HackerGuying的博客:http://www.cnblogs.com/HackerGuying】
???
轉載于:https://www.cnblogs.com/HackerGuying/archive/2013/04/12/3017059.html
總結
以上是生活随笔為你收集整理的巧用句柄函数:闪烁窗体,做提示功能时很有用哦的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux C 进程内部存储管理
- 下一篇: 米农分享:浅谈好域名应具备的10大特点