Класс QScreen
Класс QScreen используется для запроса свойств экрана. Подробнее...
| Заголовок: | #include <QScreen> |
| qmake: | QT += gui |
| С тех пор как: | Qt 5.0 |
| Наследует: | QObject |
Свойства
|
|
- 1 свойство унаследовано от QObject
Публичные функции
| virtual | ~QScreen() |
| 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, 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 |
| Qt::ScreenOrientation | nativeOrientation() const |
| Qt::ScreenOrientation | orientation() const |
| Qt::ScreenOrientations | orientationUpdateMask() const |
| qreal | physicalDotsPerInch() const |
| qreal | physicalDotsPerInchX() const |
| qreal | physicalDotsPerInchY() const |
| QSizeF | physicalSize() const |
| Qt::ScreenOrientation | primaryOrientation() const |
| qreal | refreshRate() const |
| QString | serialNumber() const |
| void | setOrientationUpdateMask(Qt::ScreenOrientations mask) |
| QSize | size() const |
| QTransform | transformBetween(Qt::ScreenOrientation a, Qt::ScreenOrientation b, const QRect &target) const |
| QRect | virtualGeometry() const |
| QList<QScreen *> | virtualSiblings() const |
| QSize | virtualSize() const |
- 31 публичная функция унаследована от QObject
Сигналы
| 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) |
- 2 сигнала, унаследованные от QObject
Статические публичные члены
| const QMetaObject | staticMetaObject |
- 9 статических публичных членов, унаследованных от QObject
Дополнительные унаследованные члены
Подробное описание
Класс QScreen используется для запроса свойств экрана.
Примечание о логических и физических точках на дюйм: физический DPI основан на фактических физических размерах пикселей, когда они доступны, и полезен для предварительного просмотра печати и других случаев, когда необходимо знать точные физические размеры отображаемого содержимого на экране.
Логический DPI используется для преобразования размеров шрифта и элементов пользовательского интерфейса из пунктов в пиксели и может отличаться от физического DPI. Логический DPI иногда можно настроить в настройках среды рабочего стола, чтобы пользователь мог глобально управлять размерами пользовательского интерфейса и шрифтов в различных приложениях.
Документация свойств
availableGeometry : const QRect
Это свойство содержит доступную геометрию экрана в пикселях.
Доступная геометрия — это геометрия, исключающая области, зарезервированные менеджером окон, такие как панели задач и системные меню.
Обратите внимание, что в X11 это вернёт истинную доступную геометрию только на системах с одним монитором и если менеджер окон установил атом _NET_WORKAREA. Во всех остальных случаях он равен geometry(). Это ограничение спецификации менеджеров окон X11.
Функции доступа:
| QRect | availableGeometry() const |
Сигнал уведомления:
| void | availableGeometryChanged(const QRect &geometry) |
availableSize : const QSize
Это свойство содержит доступный размер экрана в пикселях.
Доступный размер — это размер, исключающий области, зарезервированные менеджером окон, такие как панели задач и системные меню.
Функции доступа:
| QSize | availableSize() const |
Сигнал уведомления:
| void | availableGeometryChanged(const QRect &geometry) |
availableVirtualGeometry : const QRect
Это свойство содержит доступную геометрию виртуального рабочего стола, к которому принадлежит этот экран.
Возвращает доступную геометрию виртуального рабочего стола, соответствующего этому экрану.
Это объединение индивидуальных доступных геометрий виртуальных «сестёр».
Функции доступа:
| QRect | availableVirtualGeometry() const |
Сигнал уведомления:
| void | virtualGeometryChanged(const QRect &rect) |
См. также availableGeometry() и virtualSiblings().
availableVirtualSize : const QSize
Это свойство содержит доступный размер виртуального рабочего стола, к которому принадлежит этот экран.
Возвращает доступный размер в пикселях виртуального рабочего стола, соответствующего этому экрану.
Это объединённый размер индивидуальных доступных геометрий виртуальных «сестёр».
Функции доступа:
| QSize | availableVirtualSize() const |
Сигнал уведомления:
| void | virtualGeometryChanged(const QRect &rect) |
См. также availableSize() и virtualSiblings().
depth : const int
Это свойство содержит цветную глубину экрана.
Функции доступа:
| int | depth() const |
devicePixelRatio : const qreal
Это свойство содержит соотношение между физическими пикселями и независимыми от устройства пикселями экрана.
Возвращает соотношение между физическими пикселями и независимыми от устройства пикселями для экрана.
Общие значения — 1.0 для обычных дисплеев и 2.0 для дисплеев «ретина». Возможны и другие значения.
Это свойство было введено в Qt 5.5.
Функции доступа:
| qreal | devicePixelRatio() const |
Сигнал уведомления:
| void | physicalDotsPerInchChanged(qreal dpi) |
См. также QWindow::devicePixelRatio() и QGuiApplication::devicePixelRatio().
geometry : const QRect
Это свойство содержит геометрию экрана в пикселях.
Например, может вернуть QRect(0, 0, 1280, 1024), или, в случае виртуального рабочего стола, QRect(1280, 0, 1280, 1024).
Функции доступа:
| QRect | geometry() const |
Сигнал уведомления:
| void | geometryChanged(const QRect &geometry) |
logicalDotsPerInch : const qreal
Это свойство содержит количество логических точек или пикселей на дюйм.
Это значение можно использовать для преобразования размеров шрифтов в пиксели.
Это удобное свойство, являющееся просто средним значением свойств logicalDotsPerInchX и logicalDotsPerInchY.
Функции доступа:
| qreal | logicalDotsPerInch() const |
Сигнал уведомления:
| void | logicalDotsPerInchChanged(qreal dpi) |
См. также logicalDotsPerInchX() и logicalDotsPerInchY().
logicalDotsPerInchX : const qreal
Это свойство содержит количество логических точек или пикселей на дюйм в горизонтальном направлении.
Это значение используется для преобразования размеров шрифтов в пиксели.
Функции доступа:
| qreal | logicalDotsPerInchX() const |
Сигнал уведомления:
| void | logicalDotsPerInchChanged(qreal dpi) |
См. также logicalDotsPerInchY().
logicalDotsPerInchY : const qreal
Это свойство содержит количество логических точек или пикселей на дюйм в вертикальном направлении.
Это значение используется для преобразования размеров шрифтов в пиксели.
Функции доступа:
| qreal | logicalDotsPerInchY() const |
Сигнал уведомления:
| void | logicalDotsPerInchChanged(qreal dpi) |
См. также logicalDotsPerInchX().
manufacturer : const QString
Это свойство содержит производителя экрана.
Это свойство было введено в Qt 5.9.
Функции доступа:
| QString | manufacturer() const |
model : const QString
Это свойство содержит модель экрана.
Это свойство было введено в Qt 5.9.
Функции доступа:
| QString | model() const |
name : const QString
Это свойство содержит удобочитаемую строку, представляющую экран.
Например, в X11 они соответствуют именам экранов XRandr, обычно «VGA1», «HDMI1» и т. д.
Функции доступа:
| QString | name() const |
nativeOrientation : const Qt::ScreenOrientation
Это свойство содержит родное ориентацию экрана.
Нативное ориентация экрана — это ориентация, где значок логотипа устройства отображается правильно, или Qt::PrimaryOrientation, если платформа не поддерживает эту функцию.
Нативная ориентация является свойством аппаратного обеспечения и не изменяется.
Это свойство было введено в Qt 5.2.
Функции доступа:
| Qt::ScreenOrientation | nativeOrientation() const |
orientation : const Qt::ScreenOrientation
Это свойство содержит ориентацию экрана.
Ориентация экрана представляет физическую ориентацию дисплея. Например, ориентация экрана мобильного устройства меняется в зависимости от того, как он удерживается. Изменение ориентации может или не может вызвать изменение первичной ориентации экрана.
Изменения этого свойства будут отфильтрованы orientationUpdateMask(), поэтому для получения обновлений ориентации приложение должно сначала вызвать setOrientationUpdateMask() с маской ориентаций, которые оно хочет получить.
Qt::PrimaryOrientation никогда не возвращается.
Функции доступа:
| Qt::ScreenOrientation | orientation() const |
Сигнал уведомления:
| void | orientationChanged(Qt::ScreenOrientation orientation) |
См. также primaryOrientation().
physicalDotsPerInch : const qreal
Это свойство содержит количество физических точек или пикселей на дюйм.
Это значение представляет плотность пикселей на дисплее экрана. В зависимости от предоставляемой основной системой информации, значение может быть не совсем точным.
Это свойство удобства, представляющее собой просто среднее значение свойств physicalDotsPerInchX и physicalDotsPerInchY.
Функции доступа:
| qreal | physicalDotsPerInch() const |
Сигнал уведомления:
| void | physicalDotsPerInchChanged(qreal dpi) |
См. также physicalDotsPerInchX() и physicalDotsPerInchY().
physicalDotsPerInchX : const qreal
Это свойство содержит количество физических точек или пикселей на дюйм в горизонтальном направлении.
Это значение представляет фактическую горизонтальную плотность пикселей на дисплее экрана. В зависимости от предоставляемой основной системой информации, значение может быть не совсем точным.
Функции доступа:
| qreal | physicalDotsPerInchX() const |
Сигнал уведомления:
| void | physicalDotsPerInchChanged(qreal dpi) |
См. также physicalDotsPerInchY().
physicalDotsPerInchY : const qreal
Это свойство содержит количество физических точек или пикселей на дюйм в вертикальном направлении.
Это значение представляет фактическую вертикальную плотность пикселей на дисплее экрана. В зависимости от предоставляемой основной системой информации, значение может быть не совсем точным.
Функции доступа:
| qreal | physicalDotsPerInchY() const |
Сигнал уведомления:
| void | physicalDotsPerInchChanged(qreal dpi) |
См. также physicalDotsPerInchX().
physicalSize : const QSizeF
Это свойство содержит физический размер экрана (в миллиметрах).
Физический размер представляет фактические физические размеры дисплея экрана.
В зависимости от предоставляемой основной системой информации, значение может быть не совсем точным.
Функции доступа:
| QSizeF | physicalSize() const |
Сигнал уведомления:
| void | physicalSizeChanged(const QSizeF &size) |
primaryOrientation : const Qt::ScreenOrientation
Это свойство содержит первичную ориентацию экрана.
Первичная ориентация экрана — Qt::LandscapeOrientation, если ширина геометрии экрана больше или равна высоте, или Qt::PortraitOrientation в противном случае. Это свойство может изменяться при изменении ориентации экрана (например, при повороте дисплея). Однако поведение зависит от платформы и часто может быть указано в файле манифеста приложения.
Функции доступа:
| Qt::ScreenOrientation | primaryOrientation() const |
Сигнал уведомления:
| void | primaryOrientationChanged(Qt::ScreenOrientation orientation) |
refreshRate : const qreal
Это свойство содержит приблизительную вертикальную частоту обновления экрана в Гц.
Функции доступа:
| qreal | refreshRate() const |
Сигнал уведомления:
| void | refreshRateChanged(qreal refreshRate) |
serialNumber : const QString
Это свойство содержит серийный номер экрана.
Это свойство было введено в Qt 5.9.
Функции доступа:
| QString | serialNumber() const |
size : const QSize
Это свойство содержит разрешение пикселей экрана.
Функции доступа:
| QSize | size() const |
Сигнал уведомления:
| void | geometryChanged(const QRect &geometry) |
virtualGeometry : const QRect
Это свойство содержит пиксельную геометрию виртуального рабочего стола, к которому принадлежит этот экран.
Возвращает пиксельную геометрию виртуального рабочего стола, соответствующего этому экрану.
Это объединение индивидуальных геометрий виртуальных «братьев».
Функции доступа:
| QRect | virtualGeometry() const |
Сигнал уведомления:
| void | virtualGeometryChanged(const QRect &rect) |
См. также virtualSiblings().
virtualSize : const QSize
Это свойство содержит пиксельный размер виртуального рабочего стола, к которому принадлежит этот экран.
Возвращает пиксельный размер виртуального рабочего стола, соответствующего этому экрану.
Это объединенный размер индивидуальных геометрий виртуальных «братьев».
Функции доступа:
| QSize | virtualSize() const |
Сигнал уведомления:
| void | virtualGeometryChanged(const QRect &rect) |
См. также virtualSiblings().
Документация по членам-функциям
[virtual] QScreen::~QScreen()
Удаляет экран.
int QScreen::angleBetween(Qt::ScreenOrientation a, Qt::ScreenOrientation b) const
Вспомогательная функция для вычисления угла поворота для перехода от ориентации a к ориентации b.
Результат будет 0, 90, 180 или 270.
Qt::PrimaryOrientation интерпретируется как primaryOrientation экрана.
QPixmap QScreen::grabWindow(WId window, int x = 0, int y = 0, int width = -1, int height = -1)
Создаёт и возвращает пиксель, полученный захватом содержимого заданного окна window, ограниченного QRect(x, y, width, height).
Аргументы (x, y) задают смещение в окне, а (width, height) — область для копирования. Если width отрицательно, функция копирует всё до правой границы окна. Если height отрицательно, функция копирует всё до нижней границы окна.
Аргументы смещения и размера задаются в независимых от устройства пикселях. Возвращаемый пиксель может быть больше запрошенного размера при захвате с экрана с высокой плотностью пикселей. Используйте QPixmap::devicePixelRatio(), чтобы определить, если это так.
Идентификатор окна системы (WId) можно получить с помощью функции QWidget::winId(). Причина использования идентификатора окна, а не QWidget, заключается в возможности захвата окон, которые не являются частью приложения, например, рамок оконной системы и т.д.
Предупреждение: Захват окон, не являющихся частью приложения, не поддерживается на системах, таких как iOS, где изоляция/безопасность предотвращает чтение пикселей окон, не принадлежащих приложению.
Функция grabWindow() захватывает пиксели с экрана, а не из окна. То есть, если другое окно частично или полностью перекрывает то, которое вы захватываете, вы получите пиксели и из перекрывающего окна тоже. Курсор мыши обычно не захватывается.
Примечание по X11: если у данного window глубина отличается от глубины корневого окна, и другое окно частично или полностью скрывает то, которое вы захватываете, вы не получите пиксели из наложенного окна. Содержимое скрытых областей в пикселе будет неопределённым и неинициализированным.
На Windows Vista и выше захват слоированного окна, созданного с помощью установки атрибута Qt::WA_TranslucentBackground, не будет работать. Вместо этого следует попробовать захватить окно рабочего стола.
Предупреждение: В общем случае захват области за пределами экрана небезопасен. Это зависит от используемой подсистемы окон.
QPlatformScreen *QScreen::handle() const
Получить десктопный объект экрана.
bool QScreen::isLandscape(Qt::ScreenOrientation o) const
Вспомогательная функция, которая возвращает true если o является ландшафтной или инвертированной ландшафтной ориентацией; в противном случае возвращает false.
Qt::PrimaryOrientation интерпретируется как primaryOrientation экрана.
bool QScreen::isPortrait(Qt::ScreenOrientation o) const
Вспомогательная функция, которая возвращает true если o является портретной или инвертированной портретной ориентацией; в противном случае возвращает false.
Qt::PrimaryOrientation интерпретируется как primaryOrientation экрана.
QRect QScreen::mapBetween(Qt::ScreenOrientation a, Qt::ScreenOrientation b, const QRect &rect) const
Преобразует прямоугольник между двумя ориентациями экрана.
Это перевернёт x и y размеры прямоугольника rect, если ориентация a равна Qt::PortraitOrientation или Qt::InvertedPortraitOrientation, а ориентация b равна Qt::LandscapeOrientation или Qt::InvertedLandscapeOrientation, или наоборот.
Qt::PrimaryOrientation интерпретируется как primaryOrientation экрана.
[signal] void QScreen::orientationChanged(Qt::ScreenOrientation orientation)
Этот сигнал излучается, когда ориентация экрана изменяется с orientation в качестве аргумента.
Примечание: Сигнал-уведомление для свойства orientation.
См. также orientation().
Qt::ScreenOrientations QScreen::orientationUpdateMask() const
Возвращает текущую установленную маску обновления ориентации.
См. также setOrientationUpdateMask().
[signal] void QScreen::primaryOrientationChanged(Qt::ScreenOrientation orientation)
Этот сигнал излучается, когда основная ориентация экрана изменяется с orientation в качестве аргумента.
Примечание: Сигнал-уведомление для свойства primaryOrientation.
См. также primaryOrientation().
void QScreen::setOrientationUpdateMask(Qt::ScreenOrientations mask)
Устанавливает ориентации, для которых приложение интересуется получением обновлений в совокупности с этим экраном.
Например, чтобы получать обновления orientation() и, таким образом, иметь сигналы orientationChanged() для LandscapeOrientation и InvertedLandscapeOrientation, вызовите setOrientationUpdateMask() с mask, установленным в Qt::LandscapeOrientation | Qt::InvertedLandscapeOrientation.
По умолчанию, 0, означает, что сигналы orientationChanged() не генерируются.
См. также orientationUpdateMask().
QTransform QScreen::transformBetween(Qt::ScreenOrientation a, Qt::ScreenOrientation b, const QRect &target) const
Вспомогательная функция для вычисления преобразования, которое отображает систему координат, определённую ориентацией a, в систему координат, определённую ориентацией b, и целевыми размерами target.
Пример: a — Qt::Landscape, b — Qt::Portrait, а target — QRect(0, 0, w, h). Полученное преобразование будет таким, что точка QPoint(0, 0) отображается в QPoint(0, w), а QPoint(h, w) — в QPoint(0, h). Таким образом, система координат ландшафта QRect(0, 0, h, w) отображается (с поворотом на 90 градусов) в систему координат портрета QRect(0, 0, w, h).
Qt::PrimaryOrientation интерпретируется как primaryOrientation экрана.
QList<QScreen *> QScreen::virtualSiblings() const
Получить виртуальных «братьев» экрана.
Виртуальные «братья» — это экземпляры экранов, разделяющие одну виртуальную рабочую область. Они разделяют общую систему координат, и окна могут свободно перемещаться или позиционироваться между ними без необходимости их пересоздания.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.12/qscreen.html