Метод IUIFramework::GetView (uiribbon.h)
Извлекает адрес указателя на интерфейс, представляющий представление платформы ленты Windows, например IUIRibbon или IUIContextualUI.
Синтаксис
HRESULT GetView(
[in] UINT32 viewId,
[in] REFIID riid,
[out] void **ppv
);
Параметры
[in] viewId
Тип: UINT32
Идентификатор представления. Значение 0 для ленты или Command.IdОбъекта ContextPopup.
[in] riid
Тип: REFIID
Идентификатор интерфейса для IUIRibbon или IUIContextualUI.
[out] ppv
Тип: void**
При возврате этим методом содержит адрес указателя на объект IUIRibbon или IUIContextualUI .
Возвращаемое значение
Тип: HRESULT
В случае успешного выполнения возвращает S_OK; В противном случае — значение ошибки из следующего списка.
Значение | Описание |
---|---|
E_INVALIDARG | Riid не является допустимым идентификатором интерфейса. |
E_FAIL | Операция не удалась. |
Комментарии
Функциональные возможности пользовательского интерфейса платформы ленты отличаются представлениями, которые по сути являются встроенными основными платформами, такими как лента и ContextPopup.
IUIFramework::GetView позволяет ведущему приложению создать временный указатель интерфейса и при необходимости вызывать методы, вместо того чтобы поддерживать указатель на интерфейс.
Примеры
В следующем примере показано, как использовать метод IUIFramework::GetView для получения объекта Ribbon View, вызвать метод GetHeight для получения высоты ленты и вычислить расположение отображения для элемента управления Контекстное окно на основе высоты ленты.
void GetDisplayLocation(POINT &pt, HWND hWnd)
{
if (pt.x == -1 && pt.y == -1)
{
HRESULT hr = E_FAIL;
// Display the menu in the upper-left corner of the client area, below the ribbon.
IUIRibbon* pRibbon;
hr = g_pFramework->GetView(0, IID_PPV_ARGS(&pRibbon));
if (SUCCEEDED(hr))
{
UINT32 uRibbonHeight = 0;
hr = pRibbon->GetHeight(&uRibbonHeight);
if (SUCCEEDED(hr))
{
pt.x = 0;
pt.y = uRibbonHeight;
// Convert client coordinates of a specified point to screen coordinates.
ClientToScreen(hWnd, &pt);
}
pRibbon->Release();
}
if (FAILED(hr))
{
// Default to just the upper-right corner of the entire screen.
pt.x = 0;
pt.y = 0;
}
}
}
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 7 [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 R2 [только классические приложения] |
Целевая платформа | Windows |
Header | uiribbon.h |
DLL | Mshtml.dll |