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

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    using System.Runtime.InteropServices;

    namespace WindowsApplication1
    {
        public partial class AutoDeleteMessageBox : Form
        {
            [DllImport("user32.dll", EntryPoint = "FindWindow", CharSet = CharSet.Auto)]
            private extern static IntPtr FindWindow(string lpClassName, string lpWindowName);

            [DllImport("user32.dll", CharSet = CharSet.Auto)]
            public static extern int PostMessage(IntPtr hWnd, int msg, IntPtr wParam, IntPtr lParam);

            public const int WM_CLOSE = 0x10;

            public AutoDeleteMessageBox()
            {
                InitializeComponent();
            }

            private void button1_Click(object sender, EventArgs e)
            {
                StartKiller();
                MessageBox.Show("3秒钟后自动关闭MessageBox窗口", "MessageBox");
            }

            private void StartKiller()
            {
                Timer timer = new Timer();
                timer.Interval = 3000; //3秒启动
                timer.Tick += new EventHandler(Timer_Tick);
                timer.Start();
            }

            private void Timer_Tick(object sender, EventArgs e)
            {
                KillMessageBox();
                //停止Timer
                ((Timer)sender).Stop();
            }

            private void KillMessageBox()
            {
                //按照MessageBox的标题,找到MessageBox的窗口
                IntPtr ptr = FindWindow(null, "MessageBox");
                if (ptr != IntPtr.Zero)
                {
                    //找到则关闭MessageBox窗口
                    PostMessage(ptr, WM_CLOSE, IntPtr.Zero, IntPtr.Zero);
                }
            }
        }
    }


    参考网址:http://www.dotblogs.com.tw/puma/archive/2009/02/06/7060.aspx

  • 相关阅读:
    Java学习8.31
    Java学习8.30
    Java学习8.29
    Java学习8.28
    Java学习8.27
    Java学习8.26
    242. Valid Anagram 有效的字符串
    680. Valid Palindrome II 对称字符串-可删一个字母版本
    151. Reverse Words in a String翻转一句话中的单词
    155. Min Stack 155.最小栈
  • 原文地址:https://www.cnblogs.com/zzxap/p/2175846.html
Copyright © 2011-2022 走看看