zoukankan      html  css  js  c++  java
  • c# winform 自动关闭messagebox 模拟回车

     1 using System; 
     2 using System.Collections.Generic; 
     3 using System.ComponentModel; 
     4 using System.Data; 
     5 using System.Drawing; 
     6 using System.Text; 
     7 using System.Windows.Forms; 
     8 using System.Runtime.InteropServices; 
     9    
    10 namespace WindowsApplication1 
    11 { 
    12     public partial class AutoDeleteMessageBox : Form 
    13     { 
    14         [DllImport("user32.dll", EntryPoint = "FindWindow", CharSet = CharSet.Auto)] 
    15         private extern static IntPtr FindWindow(string lpClassName, string lpWindowName); 
    16    
    17         [DllImport("user32.dll", CharSet = CharSet.Auto)] 
    18         public static extern int PostMessage(IntPtr hWnd, int msg, IntPtr wParam, IntPtr lParam); 
    19    
    20         public const int WM_CLOSE = 0x10; 
    21    
    22         public AutoDeleteMessageBox() 
    23         { 
    24             InitializeComponent(); 
    25         } 
    26    
    27         private void button1_Click(object sender, EventArgs e) 
    28         { 
    29             StartKiller(); 
    30             MessageBox.Show("3秒钟后自动关闭MessageBox窗口", "MessageBox"); 
    31         } 
    32    
    33         private void StartKiller() 
    34         { 
    35             Timer timer = new Timer(); 
    36             timer.Interval = 3000; //3秒启动 
    37             timer.Tick += new EventHandler(Timer_Tick); 
    38             timer.Start(); 
    39         } 
    40    
    41         private void Timer_Tick(object sender, EventArgs e) 
    42         { 
    43             KillMessageBox(); 
    44             //停止Timer 
    45             ((Timer)sender).Stop(); 
    46         } 
    47    
    48         private void KillMessageBox() 
    49         { 
    50             //按照MessageBox的标题,找到MessageBox的窗口 
    51             IntPtr ptr = FindWindow(null, "MessageBox"); 
    52             if (ptr != IntPtr.Zero) 
    53             { 
    54                 //找到则关闭MessageBox窗口 
    55                 PostMessage(ptr, WM_CLOSE, IntPtr.Zero, IntPtr.Zero); 
    56             } 
    57         } 
    58     } 
    59 }
    View Code
  • 相关阅读:
    pyspider 在ubuntu上安装失败怎么搞?
    怎么在项目中使用前端包管理器bower和构建工具gulp
    Asp.net mvc 实时生成缩率图到硬盘
    如果转载优酷、土豆视频等,怎么让视频自适应宽度?
    C语言II博客作业04
    C语言I博客作业03
    C语言II博客作业02
    C语言II博客作业01
    学期总结
    The first essay
  • 原文地址:https://www.cnblogs.com/zhangzhu/p/3211974.html
Copyright © 2011-2022 走看看