Поделиться через


Метод IAccessibilityDockingService::GetAvailableSize (shobjidl.h)

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

Синтаксис

HRESULT GetAvailableSize(
  [in]  HMONITOR hMonitor,
  [out] UINT     *pcxFixed,
  [out] UINT     *pcyMax
);

Параметры

[in] hMonitor

Тип: HMONITOR

Дескриптор монитора, доступный размер закрепления которого требуется извлечь. Сведения о том, как получить HMONITOR, см. в разделе MonitorFromWindow.

[out] pcxFixed

Тип: UINT*

При успешном выполнении этого метода этот параметр получает фиксированную ширину в физических пикселях, доступную для закрепления на указанном мониторе. Любое окно, закрепленное на этом мониторе, будет иметь размер этой ширины.

Если метод завершается ошибкой, для этого значения устанавливается значение 0.

Если это значение равно NULL, произойдет нарушение доступа.

[out] pcyMax

Тип: UINT*

При успешном выполнении этого метода этот параметр получает максимальную высоту в физических пикселях, доступную для закрепленного окна на указанном мониторе.

Если метод завершается ошибкой, для этого значения устанавливается значение 0.

Если это значение равно NULL, произойдет нарушение доступа.

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

Тип: HRESULT

Возвращает стандартное возвращаемое значение, включая следующее:

Код возврата Описание
S_OK
Метод выполнен успешно.
HRESULT_FROM_WIN32(ERROR_INVALID_MONITOR_HANDLE)
Монитор, указанный hMonitor , не поддерживает закрепление.

Комментарии

Когда следует использовать

Закрепленное окно специальных возможностей ограничено объемом пространства, которое можно использовать на любом экране. Поэтому, прежде чем пытаться закрепить окно специальных возможностей, вызовите эту функцию, чтобы получить доступные измерения. Вы не можете закрепить любое окно, которое приведет к тому, что приложение Магазина Windows будет иметь доступ менее чем к 768 вертикальным пикселям экрана.

Примеры

В этом примере показан используемый метод .


 IAccessibilityDockingService *pDockingService;
 
 HRESULT hr = CoCreateInstance(CLSID_AccessibilityDockingService, CLSCTX_INPROV_SERVER, nullptr, IID_PPV_ARGS(&pDockingService));
 if (SUCCEEDED(hr)) 
 {
     UINT uMaxHeight;
     UINT uFixedWidth;

     HMONITOR hMonitor = MonitorFromWindow(_hwndMyApplication, MONITOR_DEFAULTTONULL);
     if (hMonitor != nullptr)
     {
         hr = pDockingService->GetAvailableSize(hMonitor, &uMaxHeight, &uFixedWidth);
     }
 }

Требования

Требование Значение
Минимальная версия клиента Windows 8 [только классические приложения]
Минимальная версия сервера Windows Server 2012 [только классические приложения]
Целевая платформа Windows
Header shobjidl.h

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

IAccessibilityDockingService