我的问题很简单:为什么属性TextBox
(一个public partial class MainForm : Form
{
public MainForm()
{
InitializeComponent();
this.tbInfo.Text = "DEFAULT";
this.FormClosing += (o, e) =>
{
int timeInterval_ms = 1000;
for (int i = 0; i<3; ++i)
{
int sec = (3 - i);
this.tbInfo.Text = $"Application will be closed in {sec} seconds";
Thread.Sleep(timeInterval_ms);
}
};
}
}
对象)没有更新?
它仍然设置为“DEFAULT”!
FormClosing
使用调试器我看到当我关闭应用程序时单击“X”按钮(也就是事件http://localhost:8000/products?product_group=network
被触发)时,正确调用了事件处理程序。
我做错了什么?
提前致谢!
答案 0 :(得分:0)
您将UI线程与#!/usr/bin/env stack
-- stack --resolver lts-11.2 script --package turtle
{-# LANGUAGE OverloadedStrings #-}
import Turtle
main :: IO ()
main = echo "Hello!"
暂停,因此不会更新任何内容,等待三秒钟并关闭窗口。
请改用计时器。您还必须阻止关闭Thread.Sleep
事件处理程序中的表单,以便计时器实际运行,然后在计时器的事件处理程序经过三秒后关闭窗口。
或许如下:
FormClosing