如果 C# 窗体在一定时间内未使用,请禁用该窗体

本文关键字:窗体 未使用 定时间 如果 | 更新日期: 2023-09-27 17:56:05

如果我在一定时间内(例如 10 分钟)不处理 c# 窗口窗体的内容,我想禁用它?这可能吗?

如果 C# 窗体在一定时间内未使用,请禁用该窗体

您可以使用GetLastInputInfo来确定用户上次与系统交互的时间。 请参阅 MSDN

如果您只想单独跟踪与表单的交互,则应使用计时器并在与表单交互时重置它(如Christophe所建议的那样)

正如您在此问题中读到的:如何在窗体上启用所有控件? 您可以编写一个小方法来禁用窗体中的所有控件。

现在,对于计时器,您可以创建一个计时器对象,该对象在加载表单(表单加载)时初始化。您将其倒计时到 10 分钟,当计时器过去时,您执行禁用功能。

若要使其在每次使用窗体时从 10 开始计数,可以从每个事件处理程序重置计时器,或者例如,可以使用位于前台的 wform(此处讨论:确定程序是否为 .NET 中的活动窗口)。