QScreen Class
La clase QScreen se utiliza para consultar las propiedades de la pantalla. Más...
| Cabecera: | #include <QScreen> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui)target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake: | QT += gui |
| Hereda: | QObject |
Propiedades
|
|
Funciones públicas
| int | angleBetween(Qt::ScreenOrientation a, Qt::ScreenOrientation b) const |
| QRect | availableGeometry() const |
| QSize | availableSize() const |
| QRect | availableVirtualGeometry() const |
| QSize | availableVirtualSize() const |
| int | depth() const |
| qreal | devicePixelRatio() const |
| QRect | geometry() const |
| QPixmap | grabWindow(WId window = 0, int x = 0, int y = 0, int width = -1, int height = -1) |
| QPlatformScreen * | handle() const |
| bool | isLandscape(Qt::ScreenOrientation o) const |
| bool | isPortrait(Qt::ScreenOrientation o) const |
| qreal | logicalDotsPerInch() const |
| qreal | logicalDotsPerInchX() const |
| qreal | logicalDotsPerInchY() const |
| QString | manufacturer() const |
| QRect | mapBetween(Qt::ScreenOrientation a, Qt::ScreenOrientation b, const QRect &rect) const |
| QString | model() const |
| QString | name() const |
| QNativeInterface * | nativeInterface() const |
| Qt::ScreenOrientation | nativeOrientation() const |
| Qt::ScreenOrientation | orientation() const |
| qreal | physicalDotsPerInch() const |
| qreal | physicalDotsPerInchX() const |
| qreal | physicalDotsPerInchY() const |
| QSizeF | physicalSize() const |
| Qt::ScreenOrientation | primaryOrientation() const |
| qreal | refreshRate() const |
| QString | serialNumber() const |
| QSize | size() const |
| QTransform | transformBetween(Qt::ScreenOrientation a, Qt::ScreenOrientation b, const QRect &target) const |
| QRect | virtualGeometry() const |
| QScreen * | virtualSiblingAt(QPoint point) |
| QList<QScreen *> | virtualSiblings() const |
| QSize | virtualSize() const |
Señales
| void | availableGeometryChanged(const QRect &geometry) |
| void | geometryChanged(const QRect &geometry) |
| void | logicalDotsPerInchChanged(qreal dpi) |
| void | orientationChanged(Qt::ScreenOrientation orientation) |
| void | physicalDotsPerInchChanged(qreal dpi) |
| void | physicalSizeChanged(const QSizeF &size) |
| void | primaryOrientationChanged(Qt::ScreenOrientation orientation) |
| void | refreshRateChanged(qreal refreshRate) |
| void | virtualGeometryChanged(const QRect &rect) |
Descripción detallada
Nota sobre los puntos por pulgada lógicos frente a los físicos: los PPP físicos se basan en los tamaños de píxel físicos reales cuando están disponibles, y son útiles para la vista previa de impresión y otros casos en los que es deseable conocer las dimensiones físicas exactas de los contenidos mostrados en pantalla.
Los puntos por pulgada lógicos se utilizan para convertir fuentes y elementos de la interfaz de usuario de tamaños de punto a tamaños de píxel, y pueden ser diferentes de los puntos por pulgada físicos. Los puntos por pulgada lógicos son a veces configurables por el usuario en el panel de configuración del entorno de escritorio, para permitirle controlar globalmente los tamaños de la interfaz de usuario y de las fuentes en diferentes aplicaciones.
Nota: tanto los PPP físicos como los lógicos se expresan en puntos independientes del dispositivo. Multiplique por QScreen::devicePixelRatio() para obtener la densidad dependiente del dispositivo.
Para obtener un objeto QScreen, utilice QGuiApplication::primaryScreen() para la pantalla principal, o QGuiApplication::screens() para obtener una lista de todas las pantallas.
Véase también QGuiApplication::primaryScreen() y QGuiApplication::screens().
Documentación de propiedades
[read-only] availableGeometry : QRect
Esta propiedad contiene la geometría disponible de la pantalla en píxeles
La geometría disponible es la geometría excluyendo las áreas reservadas del gestor de ventanas, como las barras de tareas y los menús del sistema.
Nota, en X11 esto devolverá la verdadera geometría disponible sólo en sistemas con un monitor y si el gestor de ventanas ha establecido el átomo _NET_WORKAREA. En todos los demás casos es igual a geometry(). Se trata de una limitación de la especificación del gestor de ventanas X11.
Funciones de acceso:
| QRect | availableGeometry() const |
Señal de notificador:
| void | availableGeometryChanged(const QRect &geometry) |
[read-only] availableSize : QSize
Esta propiedad contiene el tamaño disponible de la pantalla en píxeles
El tamaño disponible es el tamaño excluyendo las áreas reservadas del gestor de ventanas, como las barras de tareas y los menús del sistema.
Funciones de acceso:
| QSize | availableSize() const |
Señal del notificador:
| void | availableGeometryChanged(const QRect &geometry) |
[read-only] availableVirtualGeometry : QRect
Esta propiedad contiene la geometría disponible del escritorio virtual al que pertenece esta pantalla
Devuelve la geometría disponible del escritorio virtual correspondiente a esta pantalla.
Es la unión de las geometrías disponibles individuales de los hermanos virtuales.
Funciones de acceso:
| QRect | availableVirtualGeometry() const |
Señal notificador:
| void | virtualGeometryChanged(const QRect &rect) |
Véase también availableGeometry() y virtualSiblings().
[read-only] availableVirtualSize : QSize
Esta propiedad contiene el tamaño disponible del escritorio virtual al que pertenece esta pantalla
Devuelve el tamaño en píxeles disponible del escritorio virtual correspondiente a esta pantalla.
Este es el tamaño combinado de las geometrías disponibles individuales de los hermanos virtuales.
Funciones de acceso:
| QSize | availableVirtualSize() const |
Señal notificadora:
| void | virtualGeometryChanged(const QRect &rect) |
Véase también availableSize() y virtualSiblings().
[read-only] depth : const int
Esta propiedad contiene la profundidad de color de la pantalla
Funciones de acceso:
| int | depth() const |
[read-only] devicePixelRatio : qreal
Esta propiedad contiene la relación de la pantalla entre píxeles físicos y píxeles independientes del dispositivo.
Devuelve la relación entre píxeles físicos y píxeles independientes del dispositivo para la pantalla.
Esta función puede devolver un valor distinto de QWindow::devicePixelRatio(), por ejemplo en Wayland cuando se utiliza escalado fraccional, o si se establecen propiedades de ventana que afectan a la resolución de la superficie. Es preferible utilizar QWindow::devicePixelRatio().
Nota: En algunas plataformas el devicePixelRatio de una ventana y la pantalla en la que se encuentra pueden ser diferentes. Utilice esta función sólo cuando no sepa cuál es la ventana de destino. Si conoce la ventana de destino, utilice QWindow::devicePixelRatio() en su lugar.
Funciones de acceso:
| qreal | devicePixelRatio() const |
Señal del notificador:
| void | physicalDotsPerInchChanged(qreal dpi) |
Véase también QWindow::devicePixelRatio() y QGuiApplication::devicePixelRatio().
[read-only] geometry : QRect
Esta propiedad contiene la geometría de la pantalla en píxeles.
Como ejemplo esto podría devolver QRect(0, 0, 1280, 1024), o en una configuración de escritorio virtual QRect(1280, 0, 1280, 1024).
Funciones de acceso:
| QRect | geometry() const |
Señal del notificador:
| void | geometryChanged(const QRect &geometry) |
[read-only] logicalDotsPerInch : qreal
Esta propiedad contiene el número de puntos lógicos o píxeles por pulgada.
Este valor puede utilizarse para convertir tamaños de punto de fuente a tamaños de píxel.
Esta es una propiedad de conveniencia que es simplemente el promedio de las propiedades logicalDotsPerInchX y logicalDotsPerInchY.
Funciones de acceso:
| qreal | logicalDotsPerInch() const |
Señal del notificador:
| void | logicalDotsPerInchChanged(qreal dpi) |
Véase también logicalDotsPerInchX() y logicalDotsPerInchY().
[read-only] logicalDotsPerInchX : qreal
Esta propiedad contiene el número de puntos lógicos o píxeles por pulgada en la dirección horizontal.
Este valor se utiliza para convertir los tamaños de punto de las fuentes en tamaños de píxel.
Funciones de acceso:
| qreal | logicalDotsPerInchX() const |
Señal notificadora:
| void | logicalDotsPerInchChanged(qreal dpi) |
Véase también logicalDotsPerInchY().
[read-only] logicalDotsPerInchY : qreal
Esta propiedad contiene el número de puntos lógicos o píxeles por pulgada en la dirección vertical.
Este valor se utiliza para convertir los tamaños de punto de las fuentes en tamaños de píxel.
Funciones de acceso:
| qreal | logicalDotsPerInchY() const |
Señal notificadora:
| void | logicalDotsPerInchChanged(qreal dpi) |
Véase también logicalDotsPerInchX().
[read-only] manufacturer : const QString
Esta propiedad contiene el fabricante de la pantalla
Funciones de acceso:
| QString | manufacturer() const |
[read-only] model : const QString
Esta propiedad contiene el modelo de la pantalla
Funciones de acceso:
| QString | model() const |
[read-only] name : const QString
Esta propiedad contiene una cadena presentable por el usuario que representa la pantalla
Por ejemplo, en X11 corresponden a los nombres de pantalla XRandr, típicamente "VGA1", "HDMI1", etc.
Nota: No se garantiza que la cadena presentable por el usuario coincida con el resultado de ninguna API nativa, y no debe utilizarse para identificar una pantalla de forma única.
Funciones de acceso:
| QString | name() const |
[read-only] nativeOrientation : Qt::ScreenOrientation
Esta propiedad contiene la orientación nativa de la pantalla
La orientación nativa de la pantalla es la orientación en la que la pegatina del logo del dispositivo aparece del derecho hacia arriba, o Qt::PrimaryOrientation si la plataforma no soporta esta funcionalidad.
La orientación nativa es una propiedad del hardware, y no cambia.
Funciones de acceso:
| Qt::ScreenOrientation | nativeOrientation() const |
[read-only] orientation : Qt::ScreenOrientation
Esta propiedad contiene la orientación de la pantalla
La propiedad orientation indica la orientación de la pantalla desde la perspectiva del sistema de ventanas.
La mayoría de los dispositivos móviles y tabletas contienen sensores de acelerómetro. El módulo Qt Sensors proporciona la capacidad de leer este sensor directamente. Sin embargo, el sistema de ventanas puede rotar toda la pantalla automáticamente en función de cómo se esté sujetando; en ese caso, esta propiedad orientation cambiará.
Funciones de acceso:
| Qt::ScreenOrientation | orientation() const |
Señal del notificador:
| void | orientationChanged(Qt::ScreenOrientation orientation) |
Véase también primaryOrientation() y QWindow::contentOrientation().
[read-only] physicalDotsPerInch : qreal
Esta propiedad contiene el número de puntos físicos o píxeles por pulgada.
Este valor representa la densidad de píxeles de la pantalla. Dependiendo de la información que proporcione el sistema subyacente, el valor puede no ser del todo exacto.
Esta es una propiedad de conveniencia que es simplemente el promedio de las propiedades physicalDotsPerInchX y physicalDotsPerInchY.
Nota: Los PPP físicos se expresan en puntos independientes del dispositivo. Multiplique por QScreen::devicePixelRatio() para obtener la densidad dependiente del dispositivo.
Funciones de acceso:
| qreal | physicalDotsPerInch() const |
Señal notificadora:
| void | physicalDotsPerInchChanged(qreal dpi) |
Véase también physicalDotsPerInchX() y physicalDotsPerInchY().
[read-only] physicalDotsPerInchX : qreal
Esta propiedad contiene el número de puntos físicos o píxeles por pulgada en la dirección horizontal.
Este valor representa la densidad real de píxeles horizontales en la pantalla. Dependiendo de la información que proporcione el sistema subyacente, el valor puede no ser del todo exacto.
Nota: Los PPP físicos se expresan en puntos independientes del dispositivo. Multiplique por QScreen::devicePixelRatio() para obtener la densidad dependiente del dispositivo.
Funciones de acceso:
| qreal | physicalDotsPerInchX() const |
Señal notificadora:
| void | physicalDotsPerInchChanged(qreal dpi) |
Véase también physicalDotsPerInchY().
[read-only] physicalDotsPerInchY : qreal
Esta propiedad contiene el número de puntos físicos o píxeles por pulgada en la dirección vertical.
Este valor representa la densidad real de píxeles verticales en la pantalla. Dependiendo de la información que proporcione el sistema subyacente, el valor puede no ser del todo exacto.
Nota: Los PPP físicos se expresan en puntos independientes del dispositivo. Multiplique por QScreen::devicePixelRatio() para obtener la densidad dependiente del dispositivo.
Funciones de acceso:
| qreal | physicalDotsPerInchY() const |
Señal notificadora:
| void | physicalDotsPerInchChanged(qreal dpi) |
Véase también physicalDotsPerInchX().
[read-only] physicalSize : QSizeF
Esta propiedad contiene el tamaño físico de la pantalla (en milímetros)
El tamaño físico representa las dimensiones físicas reales de la pantalla.
Dependiendo de la información que proporcione el sistema subyacente, el valor puede no ser del todo exacto.
Funciones de acceso:
| QSizeF | physicalSize() const |
Señal del notificador:
| void | physicalSizeChanged(const QSizeF &size) |
[read-only] primaryOrientation : Qt::ScreenOrientation
Esta propiedad contiene la orientación primaria de la pantalla
La orientación primaria de la pantalla es Qt::LandscapeOrientation si la anchura de la geometría de la pantalla es mayor o igual que su altura, o Qt::PortraitOrientation en caso contrario. Esta propiedad puede cambiar cuando se modifica la orientación de la pantalla (es decir, cuando se gira la pantalla). Sin embargo, el comportamiento depende de la plataforma y a menudo puede especificarse en un archivo de manifiesto de la aplicación.
Funciones de acceso:
| Qt::ScreenOrientation | primaryOrientation() const |
Señal del notificador:
| void | primaryOrientationChanged(Qt::ScreenOrientation orientation) |
[read-only] refreshRate : qreal
Esta propiedad contiene la frecuencia de refresco vertical aproximada de la pantalla en Hz
Atención: Evite utilizar la frecuencia de actualización de la pantalla para controlar animaciones a través de un temporizador como QChronoTimer. En su lugar, utilice QWindow::requestUpdate().
Funciones de acceso:
| qreal | refreshRate() const |
Señal notificadora:
| void | refreshRateChanged(qreal refreshRate) |
Véase también QWindow::requestUpdate().
[read-only] serialNumber : const QString
Esta propiedad contiene el número de serie de la pantalla
Funciones de acceso:
| QString | serialNumber() const |
[read-only] size : QSize
Esta propiedad contiene la resolución en píxeles de la pantalla
Funciones de acceso:
| QSize | size() const |
Señal del notificador:
| void | geometryChanged(const QRect &geometry) |
[read-only] virtualGeometry : QRect
Esta propiedad contiene la geometría de píxeles del escritorio virtual al que pertenece esta pantalla
Devuelve la geometría en píxeles del escritorio virtual correspondiente a esta pantalla.
Es la unión de las geometrías individuales de los hermanos virtuales.
Funciones de acceso:
| QRect | virtualGeometry() const |
Señal notificador:
| void | virtualGeometryChanged(const QRect &rect) |
Véase también virtualSiblings().
[read-only] virtualSize : QSize
Esta propiedad contiene el tamaño en píxeles del escritorio virtual al que pertenece esta pantalla
Devuelve el tamaño en píxeles del escritorio virtual correspondiente a esta pantalla.
Este es el tamaño combinado de las geometrías individuales de los hermanos virtuales.
Funciones de acceso:
| QSize | virtualSize() const |
Señal notificadora:
| void | virtualGeometryChanged(const QRect &rect) |
Véase también virtualSiblings().
Documentación de las funciones miembro
int QScreen::angleBetween(Qt::ScreenOrientation a, Qt::ScreenOrientation b) const
Función de conveniencia para calcular el ángulo de rotación para llegar desde la rotación a a la rotación b.
El resultado será 0, 90, 180, o 270.
Qt::PrimaryOrientation se interpreta como la pantalla primaryOrientation().
QPixmap QScreen::grabWindow(WId window = 0, int x = 0, int y = 0, int width = -1, int height = -1)
Crea y devuelve un mapa de píxeles construido capturando el contenido de window restringido por QRect(x, y, width, height). Si window es 0, se capturará toda la pantalla.
Los argumentos (x, y) especifican el desplazamiento en la ventana, mientras que (width, height) especifican el área a copiar. Si width es negativo, la función copia todo hasta el borde derecho de la ventana. Si height es negativo, la función copia todo en la parte inferior de la ventana.
Los argumentos offset y size se especifican en píxeles independientes del dispositivo. El mapa de píxeles devuelto puede ser mayor que el tamaño solicitado cuando se obtiene de una pantalla con muchos PPP. Llame a QPixmap::devicePixelRatio() para determinar si este es el caso.
El identificador del sistema de ventanas (WId) puede recuperarse utilizando la función QWidget::winId(). La razón de utilizar un identificador de ventana y no un QWidget, es permitir la captura de ventanas que no forman parte de la aplicación, marcos del sistema de ventanas, etc.
Advertencia: La captura de ventanas que no forman parte de la aplicación no está soportada en sistemas como iOS, donde el sandboxing/seguridad impide la lectura de píxeles de ventanas que no son propiedad de la aplicación.
La función grabWindow() toma píxeles de la pantalla, no de la ventana, es decir, si hay otra ventana parcial o totalmente sobre la que se toma, se obtienen píxeles de la ventana superpuesta también. Por lo general, no se toma el cursor del ratón.
Tenga en cuenta en X11 que si el window dado no tiene la misma profundidad que la ventana raíz, y otra ventana oscurece parcial o totalmente la que usted agarra, no obtendrá píxeles de la ventana superpuesta. El contenido de las áreas oscurecidas en el mapa de píxeles será indefinido y no inicializado.
En Windows Vista y superior, no funcionará la captura de una ventana con capas, que se crea estableciendo el atributo Qt::WA_TranslucentBackground. En su lugar, debería funcionar el widget de escritorio.
Advertencia: En general, tomar un área fuera de la pantalla no es seguro. Esto depende del sistema de ventanas subyacente.
QPlatformScreen *QScreen::handle() const
Obtiene el manejador de pantalla de la plataforma.
Véase también Abstracción de plataforma Qt (QPA).
bool QScreen::isLandscape(Qt::ScreenOrientation o) const
Función de conveniencia que devuelve true si o es apaisado o apaisado invertido; en caso contrario devuelve false.
Qt::PrimaryOrientation se interpreta como la pantalla primaryOrientation().
bool QScreen::isPortrait(Qt::ScreenOrientation o) const
Función de conveniencia que devuelve true si o es retrato o retrato invertido; en caso contrario devuelve false.
Qt::PrimaryOrientation se interpreta como la pantalla primaryOrientation().
QRect QScreen::mapBetween(Qt::ScreenOrientation a, Qt::ScreenOrientation b, const QRect &rect) const
Mapea el rectángulo entre dos orientaciones de pantalla.
Esto volteará las dimensiones x e y del rectángulo rect si la orientación a es Qt::PortraitOrientation o Qt::InvertedPortraitOrientation y la orientación b es Qt::LandscapeOrientation o Qt::InvertedLandscapeOrientation, o viceversa.
Qt::PrimaryOrientation se interpreta como primaryOrientation() de la pantalla.
template <typename QNativeInterface> QNativeInterface *QScreen::nativeInterface() const
Devuelve una interfaz nativa del tipo dado para la pantalla.
Esta función proporciona acceso a la funcionalidad específica de plataforma de QScreen, tal y como se define en el espacio de nombres QNativeInterface:
Interfaz nativa de una pantalla | |
Interfaz nativa de una pantalla en macOS | |
Interfaz nativa para una pantalla en Wayland | |
Interfaz nativa para una pantalla |
Si la interfaz solicitada no está disponible, se devuelve nullptr.
[signal] void QScreen::orientationChanged(Qt::ScreenOrientation orientation)
Esta señal se emite cuando cambia la orientación de la pantalla con orientation como argumento.
Nota: Señal notificadora para la propiedad orientation.
Véase también orientation().
[signal] void QScreen::primaryOrientationChanged(Qt::ScreenOrientation orientation)
Esta señal se emite cuando cambia la orientación primaria de la pantalla con orientation como argumento.
Nota: Señal notificadora para la propiedad primaryOrientation.
Véase también primaryOrientation().
QTransform QScreen::transformBetween(Qt::ScreenOrientation a, Qt::ScreenOrientation b, const QRect &target) const
Función de conveniencia para calcular una transformación que mapea desde el sistema de coordenadas definido por la orientación a al sistema de coordenadas definido por la orientación b y las dimensiones objetivo target.
Ejemplo, a es Qt::Landscape, b es Qt::Portrait, y target es QRect(0, 0, w, h) la transformación resultante será tal que el punto QPoint(0, 0) es mapeado a QPoint(0, w), y QPoint(h, w) es mapeado a QPoint(0, h). Por lo tanto, el sistema de coordenadas de paisaje QRect(0, 0, h, w) se mapea (con una rotación de 90 grados) en el sistema de coordenadas de retrato QRect(0, 0, w, h).
Qt::PrimaryOrientation se interpreta como primaryOrientation() de la pantalla.
QScreen *QScreen::virtualSiblingAt(QPoint point)
Devuelve la pantalla en point dentro del conjunto de QScreen::virtualSiblings(), o nullptr si está fuera de cualquier pantalla.
El point está en relación con el virtualGeometry() de cada conjunto de hermanos virtuales.
QList<QScreen *> QScreen::virtualSiblings() const
Obtiene los hermanos virtuales de la pantalla.
Los hermanos virtuales son las instancias de pantalla que comparten el mismo escritorio virtual. Comparten un sistema de coordenadas común, y las ventanas se pueden mover o colocar libremente a través de ellas sin tener que volver a crearlas.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.