В C# можно проверить, имеет ли приложение фокус, используя класс System.Windows.Forms.Form
и свойство Form.Focused
.
1. Необходимо получить текущую активную форму. Для этого можно воспользоваться свойством Form.ActiveForm
. Пример:
Form activeForm = Form.ActiveForm;
2. Затем проверить, имеет ли активная форма фокус, используя свойство Focused
. Если Focused
равно true
, значит, приложение имеет фокус. Пример:
if (activeForm != null && activeForm.Focused) { // Приложение имеет фокус // Добавьте здесь необходимые действия } else { // Приложение не имеет фокус // Добавьте здесь необходимые действия }
Обратите внимание, что чтобы правильно проверить фокус приложения, нужно убедиться, что активная форма не равна null
. Если Form.ActiveForm
вернет null
, значит, активная форма отсутствует, и, следовательно, приложение не может иметь фокус. Поэтому перед проверкой на Focused
, рекомендуется выполнить проверку на null
.
Также обратите внимание, что этот подход подходит для формных приложений, если вы пишете консольное приложение или приложение без графического интерфейса, то этот метод проверки фокуса может не работать для вас.