Класс QScreen
Класс QScreen используется для запроса свойств экрана. Подробнее...
| Заголовок: | #include <QScreen> |
| qmake: | QT += gui |
| С тех пор как: | Qt 5.0 |
| Наследует от: | QObject |
Свойства
|
|
- 1 свойство унаследовано от QObject
Открытые функции
| ~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 |
- 32 открытых функции унаследованы от QObject
Сигналы
| void | availableGeometryChanged(const QRect &geometry) |
| void | geometryChanged(const QRect &geometry) |
| void | изменённыеЛогическиеТочкиНаДюйм(qreal dpi) |
| void | изменённаяОриентация(Qt::ScreenOrientation orientation) |
| void | изменённыеФизическиеТочкиНаДюйм(qreal dpi) |
| void | изменённыйФизическийРазмер(const QSizeF &size) |
| void | изменённаяОсновнаяОриентация(Qt::ScreenOrientation orientation) |
| void | изменённаяЧастотаОбновления(qreal refreshRate) |
| void | изменённаяВиртуальнаяГеометрия(const QRect &rect) |
- 2 сигнала, унаследованные от QObject
Дополнительные унаследованные члены
- 1 открытый слот, унаследованный от QObject
- 11 статических открытых членов, унаследованных от QObject
- 9 защищённых функций, унаследованных от QObject
Подробное описание
Класс QScreen используется для запроса свойств экрана.
Примечание о логических и физических точках на дюйм: физический DPI основан на фактических физических размерах пикселей, когда они доступны, и полезен для предварительного просмотра печати и других случаев, когда желательно знать точные физические размеры отображаемого на экране содержимого.
Логические точки на дюйм используются для преобразования размеров шрифтов и элементов пользовательского интерфейса из точек в пиксели и могут отличаться от физических точек на дюйм. Логические точки на дюйм иногда могут быть заданы пользователем в настройках среды рабочего стола, чтобы пользователь мог глобально управлять размерами пользовательского интерфейса и шрифтов в разных приложениях.
Документация по свойствам
availableGeometry : const QRect
Это свойство содержит доступную геометрию экрана в пикселях.
Доступная геометрия — это геометрия, исключающая области, резервируемые диспетчером окон, такие как панели задач и системные меню.
Функции доступа:
| 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().
Документация по функциям-членам
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)
Создаёт и возвращает объект QPixmap, содержащий содержимое заданного окна window, ограниченное прямоугольником QRect(x, y, width, height).
Аргументы (x, y) задают смещение в окне, а (width, height) — область, подлежащую копированию. Если width отрицательно, функция копирует всё до правой границы окна. Если height отрицательно, функция копирует всё до нижней границы окна.
Идентификатор окна (WId) можно получить, используя функцию QWidget::winId(). Причина использования идентификатора окна, а не объекта QWidget, заключается в возможности захвата окон, которые не являются частью приложения, например, рамки системы окон и т.д.
Предупреждение: Захват окон, не являющихся частью приложения, не поддерживается на таких системах, как iOS, где средства защиты/sandbox не позволяют считывать пиксели окон, не принадлежащих приложению.
Функция grabWindow() захватывает пиксели со экрана, а не из окна. То есть, если другое окно частично или полностью перекрывает захватываемое окно, вы получите пиксели из перекрывающего окна. Курсор мыши, как правило, не захватывается.
Примечание для X11: если заданное окно window имеет глубину, отличную от глубины корневого окна, а другое окно частично или полностью перекрывает захватываемое окно, вы не получите пиксели из перекрывающего окна. Содержимое скрытых областей в QPixmap будет неопределённым и неинициализированным.
В 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.9/qscreen.html