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


Метод IAccessibilityDockingService::GetAvailableSize

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

Синтаксис

HRESULT GetAvailableSize(
  [in]  HMONITOR hMonitor,
  [out] UINT     *puMaxHeight,
  [out] UINT     *puFixedWidth
);

Параметры

hMonitor [in]

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

puMaxHeight [out]

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

При сбое присвойте значение нулю.

puFixedWidth [out]

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

При сбое присвойте значение нулю.

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

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

Если puMaxHeight или puFixedWidth имеют значение NULL, произойдет нарушение доступа.

Комментарии

Окна специальных возможностей можно закрепить только к монитору, который имеет не менее 768 пикселей вертикального экрана. Этот API не позволит закрепить такие окна с высотой, которая приведет к тому, что приложения Магазина 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);
    }
}

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

IAccessibilityDockingService