Метод IShellView::UIActivate (shobjidl_core.h)

Вызывается, когда состояние активации окна представления изменяется событием, которое не вызвано самим представлением оболочки. Например, если клавиша TAB нажимается, когда дерево находится в фокусе, фокус должен быть передан представлению.

Синтаксис

HRESULT UIActivate(
  UINT uState
);

Параметры

uState

Тип: UINT

Флаг, указывающий состояние активации окна. Этот параметр может принимать одно из указанных ниже значений.

SVUIA_ACTIVATE_FOCUS

Windows Обозреватель только что создала окно представления с фокусом ввода. Это означает, что представление оболочки должно иметь возможность задавать пункты меню, соответствующие состоянию фокуса.

SVUIA_ACTIVATE_NOFOCUS

Представление оболочки теряет фокус ввода или только что создано без фокуса ввода. Представление оболочки должно иметь возможность задавать пункты меню, соответствующие состоянию без фокуса. Это означает, что не следует добавлять элементы, относящиеся к выбору.

SVUIA_DEACTIVATE

Windows Обозреватель вот-вот уничтожит окно представления оболочки. Представление оболочки должно удалить все расширенные пользовательские интерфейсы. Обычно это объединенные меню и объединенные немодерные всплывающие окна.

SVUIA_INPLACEACTIVATE

Представление оболочки активно без фокуса. Этот флаг используется только в том случае, если UIActivate предоставляется через интерфейс IShellView2 .

Возвращаемое значение

Тип: HRESULT

Возвращает S_OK в случае успешного выполнения, или значение ошибки, определенное COM, в противном случае.

Комментарии

Перед повторным объединением пунктов меню представление оболочки обычно перехватывает сообщение WM_SETFOCUS и вызывает метод OnViewWindowActive . Представление оболочки не должно перехватывать сообщение NM_KILLFOCUS для повторного объединения пунктов меню.

Примечания к вызывающим приложениям

Вызовите этот метод, чтобы сообщить об изменении состояния активации.

Примечания для разработчиков

Используйте этот метод для отслеживания состояния активации и изменения любого поведения соответствующим образом.

Требования

Требование Значение
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header shobjidl_core.h (включая Shobjidl.h)
DLL Shell32.dll (версия 4.0 или более поздняя)

См. также раздел

IShellView