QtBase
v6.3.1
|
The QScreen class is used to query screen properties. \inmodule QtGui. More...
#include <qscreen.h>
Signals | |
void | geometryChanged (const QRect &geometry) |
void | availableGeometryChanged (const QRect &geometry) |
void | physicalSizeChanged (const QSizeF &size) |
void | physicalDotsPerInchChanged (qreal dpi) |
void | logicalDotsPerInchChanged (qreal dpi) |
void | virtualGeometryChanged (const QRect &rect) |
void | primaryOrientationChanged (Qt::ScreenOrientation orientation) |
void | orientationChanged (Qt::ScreenOrientation orientation) |
void | refreshRateChanged (qreal refreshRate) |
Signals inherited from QObject | |
void | destroyed (QObject *=nullptr) |
void | objectNameChanged (const QString &objectName, QPrivateSignal) |
Properties | |
QString | name |
a user presentable string representing the screen More... | |
QString | manufacturer |
the manufacturer of the screen More... | |
QString | model |
the model of the screen More... | |
QString | serialNumber |
the serial number of the screen More... | |
int | depth |
the color depth of the screen More... | |
QSize | size |
the pixel resolution of the screen More... | |
QSize | availableSize |
the screen's available size in pixels More... | |
QSize | virtualSize |
the pixel size of the virtual desktop to which this screen belongs More... | |
QSize | availableVirtualSize |
the available size of the virtual desktop to which this screen belongs More... | |
QRect | geometry |
the screen's geometry in pixels More... | |
QRect | availableGeometry |
the screen's available geometry in pixels More... | |
QRect | virtualGeometry |
the pixel geometry of the virtual desktop to which this screen belongs More... | |
QRect | availableVirtualGeometry |
the available geometry of the virtual desktop to which this screen belongs More... | |
QSizeF | physicalSize |
the screen's physical size (in millimeters) More... | |
qreal | physicalDotsPerInchX |
the number of physical dots or pixels per inch in the horizontal direction More... | |
qreal | physicalDotsPerInchY |
the number of physical dots or pixels per inch in the vertical direction More... | |
qreal | physicalDotsPerInch |
the number of physical dots or pixels per inch More... | |
qreal | logicalDotsPerInchX |
the number of logical dots or pixels per inch in the horizontal direction More... | |
qreal | logicalDotsPerInchY |
the number of logical dots or pixels per inch in the vertical direction More... | |
qreal | logicalDotsPerInch |
the number of logical dots or pixels per inch More... | |
qreal | devicePixelRatio |
the screen's ratio between physical pixels and device-independent pixels More... | |
Qt::ScreenOrientation | primaryOrientation |
the primary screen orientation More... | |
Qt::ScreenOrientation | orientation |
the screen orientation More... | |
Qt::ScreenOrientation | nativeOrientation |
the native screen orientation More... | |
qreal | refreshRate |
the approximate vertical refresh rate of the screen in Hz More... | |
Properties inherited from QObject | |
QString | objectName |
the name of this object More... | |
Friends | |
class | QGuiApplicationPrivate |
class | QPlatformIntegration |
class | QPlatformScreen |
class | QHighDpiScaling |
class | QWindowSystemInterface |
The QScreen class is used to query screen properties. \inmodule QtGui.
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.
\inmodule QtGui
QScreen::~QScreen | ( | ) |
Destroys the screen.
Definition at line 132 of file qscreen.cpp.
int QScreen::angleBetween | ( | Qt::ScreenOrientation | a, |
Qt::ScreenOrientation | b | ||
) | const |
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.
Qt::PrimaryOrientation is interpreted as the screen's primaryOrientation().
Definition at line 606 of file qscreen.cpp.
QRect QScreen::availableGeometry | ( | ) | const |
Definition at line 434 of file qscreen.cpp.
QSize QScreen::availableSize | ( | ) | const |
Definition at line 404 of file qscreen.cpp.
QRect QScreen::availableVirtualGeometry | ( | ) | const |
QSize QScreen::availableVirtualSize | ( | ) | const |
int QScreen::depth | ( | ) | const |
Definition at line 236 of file qscreen.cpp.
qreal QScreen::devicePixelRatio | ( | ) | const |
QRect QScreen::geometry | ( | ) | const |
Definition at line 417 of file qscreen.cpp.
QPixmap QScreen::grabWindow | ( | WId | window = 0 , |
int | x = 0 , |
||
int | y = 0 , |
||
int | width = -1 , |
||
int | height = -1 |
||
) |
Creates and returns a pixmap constructed by grabbing the contents of the given window restricted by QRect(x, y, width, height). If window is 0, then the entire screen will be grabbed.
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 QPixmap::devicePixelRatio() to determine if this is the case.
The window system identifier (WId
) can be retrieved using the QWidget::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.
The grabWindow() 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 Qt::WA_TranslucentBackground attribute, will not work. Instead grabbing the desktop widget should work.
Definition at line 772 of file qscreen.cpp.
QPlatformScreen * QScreen::handle | ( | ) | const |
Get the platform screen handle.
Definition at line 177 of file qscreen.cpp.
bool QScreen::isLandscape | ( | Qt::ScreenOrientation | o | ) | const |
Convenience function that returns true
if o is either landscape or inverted landscape; otherwise returns false
.
Qt::PrimaryOrientation is interpreted as the screen's primaryOrientation().
Definition at line 678 of file qscreen.cpp.
bool QScreen::isPortrait | ( | Qt::ScreenOrientation | o | ) | const |
Convenience function that returns true
if o is either portrait or inverted portrait; otherwise returns false
.
Qt::PrimaryOrientation is interpreted as the screen's primaryOrientation().
Definition at line 666 of file qscreen.cpp.
qreal QScreen::logicalDotsPerInch | ( | ) | const |
qreal QScreen::logicalDotsPerInchX | ( | ) | const |
qreal QScreen::logicalDotsPerInchY | ( | ) | const |
QString QScreen::manufacturer | ( | ) | const |
Definition at line 202 of file qscreen.cpp.
QRect QScreen::mapBetween | ( | Qt::ScreenOrientation | a, |
Qt::ScreenOrientation | b, | ||
const QRect & | rect | ||
) | const |
Maps the rect between two screen orientations.
This will flip the x and y dimensions of the rectangle {rect} if the orientation {a} is Qt::PortraitOrientation or Qt::InvertedPortraitOrientation and orientation {b} is Qt::LandscapeOrientation or Qt::InvertedLandscapeOrientation, or vice versa.
Qt::PrimaryOrientation is interpreted as the screen's primaryOrientation().
Definition at line 649 of file qscreen.cpp.
QString QScreen::model | ( | ) | const |
Definition at line 214 of file qscreen.cpp.
QString QScreen::name | ( | ) | const |
Qt::ScreenOrientation QScreen::nativeOrientation | ( | ) | const |
Definition at line 592 of file qscreen.cpp.
Qt::ScreenOrientation QScreen::orientation | ( | ) | const |
Definition at line 541 of file qscreen.cpp.
|
signal |
This signal is emitted when the orientation of the screen changes with orientation as an argument.
qreal QScreen::physicalDotsPerInch | ( | ) | const |
qreal QScreen::physicalDotsPerInchX | ( | ) | const |
qreal QScreen::physicalDotsPerInchY | ( | ) | const |
QSizeF QScreen::physicalSize | ( | ) | const |
Definition at line 391 of file qscreen.cpp.
Qt::ScreenOrientation QScreen::primaryOrientation | ( | ) | const |
Definition at line 575 of file qscreen.cpp.
|
signal |
This signal is emitted when the primary orientation of the screen changes with orientation as an argument.
qreal QScreen::refreshRate | ( | ) | const |
Definition at line 556 of file qscreen.cpp.
QString QScreen::serialNumber | ( | ) | const |
Definition at line 226 of file qscreen.cpp.
QSize QScreen::size | ( | ) | const |
Definition at line 246 of file qscreen.cpp.
QTransform QScreen::transformBetween | ( | Qt::ScreenOrientation | a, |
Qt::ScreenOrientation | b, | ||
const QRect & | target | ||
) | const |
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).
Qt::PrimaryOrientation is interpreted as the screen's primaryOrientation().
Definition at line 629 of file qscreen.cpp.
QRect QScreen::virtualGeometry | ( | ) | const |
Returns the screen at point within the set of \l QScreen::virtualSiblings(), or nullptr
if outside of any screen.
The point is in relation to the virtualGeometry() of each set of virtual siblings.
Definition at line 716 of file qscreen.cpp.
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.
Definition at line 447 of file qscreen.cpp.
QSize QScreen::virtualSize | ( | ) | const |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
read |
the screen's available geometry in pixels
The available geometry is the geometry excluding window manager reserved areas such as task bars and system menus.
Note, on X11 this will return the true available geometry only on systems with one monitor and if window manager has set _NET_WORKAREA atom. In all other cases this is equal to geometry(). This is a limitation in X11 window manager specification.
|
read |
|
read |
the available geometry of the virtual desktop to which this screen belongs
Returns the available geometry of the virtual desktop corresponding to this screen.
This is the union of the virtual siblings' individual available geometries.
|
read |
the available size of the virtual desktop to which this screen belongs
Returns the available pixel size of the virtual desktop corresponding to this screen.
This is the combined size of the virtual siblings' individual available geometries.
|
read |
the screen's ratio between physical pixels and device-independent pixels
Returns the ratio between physical pixels and device-independent pixels for the screen.
Common values are 1.0 on normal displays and 2.0 on "retina" displays. Higher values are also possible.
|
read |
the screen's geometry in pixels
As an example this might return QRect(0, 0, 1280, 1024), or in a virtual desktop setting QRect(1280, 0, 1280, 1024).
|
read |
the number of logical dots or pixels per inch
This value can be used to convert font point sizes to pixel sizes.
This is a convenience property that's simply the average of the logicalDotsPerInchX and logicalDotsPerInchY properties.
|
read |
the number of logical dots or pixels per inch in the horizontal direction
This value is used to convert font point sizes to pixel sizes.
|
read |
the number of logical dots or pixels per inch in the vertical direction
This value is used to convert font point sizes to pixel sizes.
|
read |
|
read |
|
read |
the native screen orientation
The native orientation of the screen is the orientation where the logo sticker of the device appears the right way up, or Qt::PrimaryOrientation if the platform does not support this functionality.
The native orientation is a property of the hardware, and does not change.
|
read |
the screen orientation
The orientation
property tells the orientation of the screen from the window system perspective.
Most mobile devices and tablet computers contain accelerometer sensors. The Qt Sensors module provides the ability to read this sensor directly. However, the windowing system may rotate the entire screen automatically based on how it is being held; in that case, this orientation
property will change.
|
read |
the number of physical dots or pixels per inch
This value represents the pixel density on the screen's display. Depending on what information the underlying system provides the value might not be entirely accurate.
This is a convenience property that's simply the average of the physicalDotsPerInchX and physicalDotsPerInchY properties.
|
read |
the number of physical dots or pixels per inch in the horizontal direction
This value represents the actual horizontal pixel density on the screen's display. Depending on what information the underlying system provides the value might not be entirely accurate.
|
read |
the number of physical dots or pixels per inch in the vertical direction
This value represents the actual vertical pixel density on the screen's display. Depending on what information the underlying system provides the value might not be entirely accurate.
|
read |
|
read |
the primary screen orientation
The primary screen orientation is Qt::LandscapeOrientation if the screen geometry's width is greater than or equal to its height, or Qt::PortraitOrientation otherwise. This property might change when the screen orientation was changed (i.e. when the display is rotated). The behavior is however platform dependent and can often be specified in an application manifest file.
|
read |
|
read |
|
read |
the pixel geometry of the virtual desktop to which this screen belongs
Returns the pixel geometry of the virtual desktop corresponding to this screen.
This is the union of the virtual siblings' individual geometries.
|
read |
the pixel size of the virtual desktop to which this screen belongs
Returns the pixel size of the virtual desktop corresponding to this screen.
This is the combined size of the virtual siblings' individual geometries.