Método IUIFramework::GetView (uiribbon.h)
Recupera o endereço de um ponteiro para uma interface que representa uma exibição de estrutura da Faixa de Opções do Windows, como IUIRibbon ou IUIContextualUI.
Sintaxe
HRESULT GetView(
[in] UINT32 viewId,
[in] REFIID riid,
[out] void **ppv
);
Parâmetros
[in] viewId
Tipo: UINT32
A ID do Modo de Exibição. Um valor de 0 para uma Faixa de Opções ou o Command.Id de um ContextPopup.
[in] riid
Tipo: REFIID
A ID da interface para IUIRibbon ou IUIContextualUI.
[out] ppv
Tipo: void**
Quando esse método retorna, contém o endereço de um ponteiro para um objeto IUIRibbon ou IUIContextualUI .
Retornar valor
Tipo: HRESULT
Retorna S_OK se tiver êxito; caso contrário, um valor de erro da lista a seguir.
Valor | Descrição |
---|---|
E_INVALIDARG | riid não é uma ID de interface válida. |
E_FAIL | Falha na operação. |
Comentários
A funcionalidade da interface do usuário da estrutura da faixa de opções é diferenciada por Exibições, que são essencialmente estruturas principais internas, como a Faixa de Opções e o ContextPopup.
Em vez de manter um ponteiro para uma interface durante toda a vida útil de um aplicativo, IUIFramework::GetView permite que um aplicativo host crie um ponteiro de interface temporário e chame os métodos conforme necessário.
Exemplos
O exemplo a seguir demonstra como usar o método IUIFramework::GetView para recuperar um objeto Ribbon View, chamar o método GetHeight para recuperar a altura da faixa de opções e calcular um local de exibição para um controle pop-up de contexto com base na altura da faixa de opções.
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;
}
}
}
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 7 [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2008 R2 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | uiribbon.h |
DLL | Mshtml.dll |