如何在显示表单时运行代码?
我认为Load事件可能有所帮助,但以下代码只是立即显示“Done”。
public Form1() { InitializeComponent(); Load += new EventHandler(Form1_Load); } void Form1_Load(object sender, EventArgs e) { System.Threading.Thread.Sleep(3000); Text = "Done"; }
表格显示后如何让它睡眠?
谢谢。
Windows窗体有一个Shown事件。 退房: http : //msdn.microsoft.com/en-us/library/system.windows.forms.form.shown.aspx
或者,如果你很懒,在这里你去:
public Form1() { InitializeComponent(); Shown += Form1_Shown; } private void Form1_Shown(object sender, EventArgs e) { System.Threading.Thread.Sleep(3000); Text = "Done"; }
请享用。
我建议不要阻止一个表格,处理一些东西,然后在标题“完成”中显示,导致你想要做的,我猜。 这给用户带来了阻止的UI感觉 ,这是不好的。
显示一些临时的“等待……”表格并完成您执行的操作/计算肯定会更好,显示您的主要表格。
更多的UX专注于设计。
您可以在Form1_Load方法中启动一个Timer ,并将其Elapsed事件链接到显示该消息的方法。
Thread.sleep代码(3000); 在Load事件处理程序中延迟表单打开3秒。 这就是为什么它不像你期望的那样工作。 计时器是最好的解决方案。