Compartir a través de


Función GetScaleFactorForMonitor (shellscalingapi.h)

Obtiene el factor de escala de un monitor específico. Esta función reemplaza a GetScaleFactorForDevice.

Sintaxis

HRESULT GetScaleFactorForMonitor(
  [in]  HMONITOR            hMon,
  [out] DEVICE_SCALE_FACTOR *pScale
);

Parámetros

[in] hMon

Identificador del monitor.

[out] pScale

Cuando esta función se devuelve correctamente, este valor apunta a uno de los valores de DEVICE_SCALE_FACTOR que especifican el factor de escala del monitor especificado.

Si se produce un error en la llamada de función, este valor apunta a un factor de escala válido para que las aplicaciones puedan optar por continuar con recursos de tamaño incorrecto.

Valor devuelto

Si esta función se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.

Comentarios

El código debe controlar el mensaje de WM_WINDOWPOSCHANGED además del evento de cambio de escala registrado mediante RegisterScaleChangeEvent, ya que la ventana de la aplicación se puede mover entre monitores. En respuesta al mensaje de WM_WINDOWPOSCHANGED , llame a MonitorFromWindow, seguido de GetScaleFactorForMonitor para obtener el factor de escala del monitor en el que se encuentra la ventana de la aplicación. Después, el código puede reaccionar ante cualquier cambio de puntos por pulgada (ppp) mediante la recarga de recursos y el cambio de diseño.

Requisitos

   
Cliente mínimo compatible Windows 8.1 [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2012 R2 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado shellscalingapi.h
Library Shcore.lib
Archivo DLL Shcore.dll

Consulte también

RegisterScaleChangeEvent

AnularregisterScaleChangeEvent