Как получить уведомление, когда Internet Explorer получает фокус - PullRequest
1 голос
/ 01 сентября 2011

Я работаю над проектом, в котором я хочу, чтобы моя программа была уведомлена, когда Internet Explorer получает фокус или при навигации по вкладкам.Чтобы было понятнее, когда экземпляр IE получает фокус или пользователь выбирает другую вкладку, я хочу, чтобы моя программа была уведомлена.

Я просто попытался сделать это, используя AutomationFocusChangedEventHandler, как я упоминал в моем предыдущем вопросе: AutomationFocusChangedEventHandler не всегда срабатывает .Но похоже, что он не работает должным образом с взаимодействиями табуляции.

(кажется, мой предыдущий вопрос был очень конкретным, поэтому я попытался сделать его более общим)

Так что я хочу знать, есть лиспособ, которым мое приложение может быть уведомлено, когда Internet Explorer получает фокус или пользователь выбирает другую вкладку в одном и том же экземпляре IE?

Или, если она все еще очень специфична, есть ли способ, которым моя программа может бытьуведомлен, когда фокус изменился?

1 Ответ

0 голосов
/ 02 сентября 2011

Здесь - похожее приложение. Посмотрите, поможет ли это.

//This Function is used to get Handle for Active Window...
[System.Runtime.InteropServices.DllImport("user32.dll", CharSet=System.Runtime.InteropServices.CharSet.Auto)]
private static extern IntPtr GetForegroundWindow();

public static IntPtr getforegroundWindow()
{
    //This method is used to get Handle for Active Window using GetForegroundWindow() method present in  
    user32.dll
    return GetForegroundWindow();
}
...