C# 实现 类似Android的Toast
public partial class ToastForm : Form { /// <summary> /// 显示毫秒 /// </summary> private int _wait_ms = 1000; public ToastForm(double seconds, string text, Form parent) : this(seconds, text, parent, Color.Blue, 15, ContentAlignment.TopCenter) { } public ToastForm(double seconds, string text, Form parent, int font_size) : this(seconds, text, parent, Color.Blue, font_size, ContentAlignment.TopCenter) { } public ToastForm(double seconds, string text, Form parent, Color text_color, int font_size, ContentAlignment textAlignment) { InitializeComponent(); _wait_ms = (int)(seconds * 1000); if (font_size != lbShow.Font.Size) lbShow.Font = new Font(lbShow.Font.Name, font_size, lbShow.Font.Style); lbShow.Text = text; if (lbShow.TextAlign != textAlignment) lbShow.TextAlign = textAlignment; this.lbShow.ForeColor = text_color; this.Left = parent.Left + (parent.Width - this.Width) / 2; this.Top = parent.Top + (parent.Height - this.Height) / 2; } private void ToastForm_Load(object sender, EventArgs e) { Thread t = new Thread((ThreadStart)delegate { Thread.Sleep(_wait_ms); try { this.Invoke(new EventHandler((s1, e1) => this.Close())); } catch { } }); t.IsBackground = true; t.Start(); } }