QScreen

The QScreen class is used to query screen properties. More

Inheritance diagram of PySide2.QtGui.QScreen

Synopsis

Functions

Signals

Detailed Description

A note on logical vs physical dots per inch: physical DPI is based on the actual physical pixel sizes when available, and is useful for print preview and other cases where it’s desirable to know the exact physical dimensions of screen displayed contents.

Logical dots per inch are used to convert font and user interface elements from point sizes to pixel sizes, and might be different from the physical dots per inch. The logical dots per inch are sometimes user-settable in the desktop environment’s settings panel, to let the user globally control UI and font sizes in different applications.

PySide2.QtGui.QScreen.angleBetween(a, b)
Parameters
  • aScreenOrientation

  • bScreenOrientation

Return type

int

Convenience function to compute the angle of rotation to get from rotation a to rotation b .

The result will be 0, 90, 180, or 270.

PrimaryOrientation is interpreted as the screen’s primaryOrientation() .

PySide2.QtGui.QScreen.availableGeometry()
Return type

QRect

PySide2.QtGui.QScreen.availableGeometryChanged(geometry)
Parameters

geometryQRect

PySide2.QtGui.QScreen.availableSize()
Return type

QSize

PySide2.QtGui.QScreen.availableVirtualGeometry()
Return type

QRect

PySide2.QtGui.QScreen.availableVirtualSize()
Return type

QSize

PySide2.QtGui.QScreen.depth()
Return type

int

PySide2.QtGui.QScreen.devicePixelRatio()
Return type

qreal

PySide2.QtGui.QScreen.geometry()
Return type

QRect

PySide2.QtGui.QScreen.geometryChanged(geometry)
Parameters

geometryQRect

PySide2.QtGui.QScreen.grabWindow(window[, x=0[, y=0[, w=-1[, h=-1]]]])
Parameters
  • windowWId

  • xint

  • yint

  • wint

  • hint

Return type

QPixmap

Creates and returns a pixmap constructed by grabbing the contents of the given window restricted by QRect (x , y , width , height ).

The arguments (x , y ) specify the offset in the window, whereas (width , height ) specify the area to be copied. If width is negative, the function copies everything to the right border of the window. If height is negative, the function copies everything to the bottom of the window.

The offset and size arguments are specified in device independent pixels. The returned pixmap may be larger than the requested size when grabbing from a high-DPI screen. Call devicePixelRatio() to determine if this is the case.

The window system identifier (WId ) can be retrieved using the winId() function. The rationale for using a window identifier and not a QWidget , is to enable grabbing of windows that are not part of the application, window system frames, and so on.

Warning

Grabbing windows that are not part of the application is not supported on systems such as iOS, where sandboxing/security prevents reading pixels of windows not owned by the application.

The function grabs pixels from the screen, not from the window, i.e. if there is another window partially or entirely over the one you grab, you get pixels from the overlying window, too. The mouse cursor is generally not grabbed.

Note on X11 that if the given window doesn’t have the same depth as the root window, and another window partially or entirely obscures the one you grab, you will not get pixels from the overlying window. The contents of the obscured areas in the pixmap will be undefined and uninitialized.

On Windows Vista and above grabbing a layered window, which is created by setting the WA_TranslucentBackground attribute, will not work. Instead grabbing the desktop widget should work.

Warning

In general, grabbing an area outside the screen is not safe. This depends on the underlying window system.

PySide2.QtGui.QScreen.isLandscape(orientation)
Parameters

orientationScreenOrientation

Return type

bool

Convenience function that returns true if o is either landscape or inverted landscape; otherwise returns false .

PrimaryOrientation is interpreted as the screen’s primaryOrientation() .

PySide2.QtGui.QScreen.isPortrait(orientation)
Parameters

orientationScreenOrientation

Return type

bool

Convenience function that returns true if o is either portrait or inverted portrait; otherwise returns false .

PrimaryOrientation is interpreted as the screen’s primaryOrientation() .

PySide2.QtGui.QScreen.logicalDotsPerInch()
Return type

qreal

PySide2.QtGui.QScreen.logicalDotsPerInchChanged(dpi)
Parameters

dpiqreal

PySide2.QtGui.QScreen.logicalDotsPerInchX()
Return type

qreal

PySide2.QtGui.QScreen.logicalDotsPerInchY()
Return type

qreal

PySide2.QtGui.QScreen.manufacturer()
Return type

unicode

PySide2.QtGui.QScreen.mapBetween(a, b, rect)
Parameters
  • aScreenOrientation

  • bScreenOrientation

  • rectQRect

Return type

QRect

Maps the rect between two screen orientations.

This will flip the x and y dimensions of the rectangle rect if the orientation a is PortraitOrientation or InvertedPortraitOrientation and orientation b is LandscapeOrientation or InvertedLandscapeOrientation , or vice versa.

PrimaryOrientation is interpreted as the screen’s primaryOrientation() .

PySide2.QtGui.QScreen.model()
Return type

unicode

PySide2.QtGui.QScreen.name()
Return type

unicode

PySide2.QtGui.QScreen.nativeOrientation()
Return type

ScreenOrientation

PySide2.QtGui.QScreen.orientation()
Return type

ScreenOrientation

PySide2.QtGui.QScreen.orientationChanged(orientation)
Parameters

orientationScreenOrientation

PySide2.QtGui.QScreen.orientationUpdateMask()
Return type

ScreenOrientations

Returns the currently set orientation update mask.

PySide2.QtGui.QScreen.physicalDotsPerInch()
Return type

qreal

PySide2.QtGui.QScreen.physicalDotsPerInchChanged(dpi)
Parameters

dpiqreal

PySide2.QtGui.QScreen.physicalDotsPerInchX()
Return type

qreal

PySide2.QtGui.QScreen.physicalDotsPerInchY()
Return type

qreal

PySide2.QtGui.QScreen.physicalSize()
Return type

QSizeF

PySide2.QtGui.QScreen.physicalSizeChanged(size)
Parameters

sizeQSizeF

PySide2.QtGui.QScreen.primaryOrientation()
Return type

ScreenOrientation

PySide2.QtGui.QScreen.primaryOrientationChanged(orientation)
Parameters

orientationScreenOrientation

PySide2.QtGui.QScreen.refreshRate()
Return type

qreal

PySide2.QtGui.QScreen.refreshRateChanged(refreshRate)
Parameters

refreshRateqreal

PySide2.QtGui.QScreen.serialNumber()
Return type

unicode

PySide2.QtGui.QScreen.setOrientationUpdateMask(mask)
Parameters

maskScreenOrientations

Sets the orientations that the application is interested in receiving updates for in conjunction with this screen.

For example, to receive orientation() updates and thus have orientationChanged() signals being emitted for LandscapeOrientation and InvertedLandscapeOrientation, call with mask set to LandscapeOrientation | InvertedLandscapeOrientation .

The default, 0, means no orientationChanged() signals are fired.

PySide2.QtGui.QScreen.size()
Return type

QSize

PySide2.QtGui.QScreen.transformBetween(a, b, target)
Parameters
  • aScreenOrientation

  • bScreenOrientation

  • targetQRect

Return type

QTransform

Convenience function to compute a transform that maps from the coordinate system defined by orientation a into the coordinate system defined by orientation b and target dimensions target .

Example, a is Qt::Landscape, b is Qt::Portrait, and target is QRect (0, 0, w, h) the resulting transform will be such that the point QPoint (0, 0) is mapped to QPoint (0, w), and QPoint (h, w) is mapped to QPoint (0, h). Thus, the landscape coordinate system QRect (0, 0, h, w) is mapped (with a 90 degree rotation) into the portrait coordinate system QRect (0, 0, w, h).

PrimaryOrientation is interpreted as the screen’s primaryOrientation() .

PySide2.QtGui.QScreen.virtualGeometry()
Return type

QRect

PySide2.QtGui.QScreen.virtualGeometryChanged(rect)
Parameters

rectQRect

PySide2.QtGui.QScreen.virtualSiblings()
Return type

Get the screen’s virtual siblings.

The virtual siblings are the screen instances sharing the same virtual desktop. They share a common coordinate system, and windows can freely be moved or positioned across them without having to be re-created.

PySide2.QtGui.QScreen.virtualSize()
Return type

QSize