Spec-Zone.ru › Qt 6.1

Класс QScreen

Класс QScreen используется для запроса свойств экрана. Подробнее...

Заголовок: #include <QScreen>
CMake: find_package(Qt6 COMPONENTS Gui REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
С тех пор: Qt 5.0
Наследует: QObject
  • Список всех членов, включая унаследованные

Свойства

  • availableGeometry : const QRect
  • availableSize : const QSize
  • availableVirtualGeometry : const QRect
  • availableVirtualSize : const QSize
  • depth : const int
  • devicePixelRatio : const qreal
  • geometry : const QRect
  • logicalDotsPerInch : const qreal
  • logicalDotsPerInchX : const qreal
  • logicalDotsPerInchY : const qreal
  • manufacturer : const QString
  • model : const QString
  • name : const QString
  • nativeOrientation : const Qt::ScreenOrientation
  • orientation : const Qt::ScreenOrientation
  • physicalDotsPerInch : const qreal
  • physicalDotsPerInchX : const qreal
  • physicalDotsPerInchY : const qreal
  • physicalSize : const QSizeF
  • primaryOrientation : const Qt::ScreenOrientation
  • refreshRate : const qreal
  • serialNumber : const QString
  • size : const QSize
  • virtualGeometry : const QRect
  • virtualSize : const QSize

Открытые функции

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 = 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
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

Сигналы

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)

Подробное описание

Примечание по логическому и физическому количеству точек на дюйм: физическое значение DPI основано на фактических размерах физических пикселей, когда они доступны, и полезно для предварительного просмотра печати и других случаев, когда необходимо знать точные физические размеры отображаемого на экране содержимого.

Логическое значение DPI используется для преобразования размеров шрифтов и элементов пользовательского интерфейса из пунктов в пиксели и может отличаться от физического значения DPI. Логическое значение DPI иногда может настраиваться пользователем в настройках среды рабочего стола, чтобы глобально управлять размерами пользовательского интерфейса и шрифтов в разных приложениях.

Примечание: и физическое, и логическое значение DPI выражаются в независимых от устройства точках. Умножьте на QScreen::devicePixelRatio() для получения плотности, зависящей от устройства.

Документация свойств

[read-only] availableGeometry : const QRect

Это свойство содержит доступную геометрию экрана в пикселях.

Доступная геометрия — это геометрия, исключающая области, зарезервированные менеджером окон, такие как панели задач и системные меню.

Обратите внимание, что в X11 это свойство вернёт истинную доступную геометрию только на системах с одним монитором и если менеджер окон установил атом _NET_WORKAREA. Во всех остальных случаях оно равно geometry(). Это ограничение в спецификации менеджера окон X11.

Функции доступа:

QRect availableGeometry() const

Сигнал уведомления:

void availableGeometryChanged(const QRect &geometry)

[read-only] availableSize : const QSize

Это свойство содержит доступный размер экрана в пикселях.

Доступный размер — это размер, исключающий области, зарезервированные менеджером окон, такие как панели задач и системные меню.

Функции доступа:

QSize availableSize() const

Сигнал уведомления:

void availableGeometryChanged(const QRect &geometry)

[read-only] availableVirtualGeometry : const QRect

Это свойство содержит доступную геометрию виртуального рабочего стола, к которому принадлежит этот экран.

Возвращает доступную геометрию виртуального рабочего стола, соответствующего этому экрану.

Это объединение отдельных доступных геометрий виртуальных "братьев" экрана.

Функции доступа:

QRect availableVirtualGeometry() const

Сигнал уведомления:

void virtualGeometryChanged(const QRect &rect)

См. также availableGeometry() и virtualSiblings().

[read-only] availableVirtualSize : const QSize

Это свойство содержит доступный размер виртуального рабочего стола, к которому принадлежит этот экран.

Возвращает доступный размер в пикселях виртуального рабочего стола, соответствующего этому экрану.

Это совокупный размер доступных геометрий виртуальных "братьев" экрана.

Функции доступа:

QSize availableVirtualSize() const

Сигнал уведомления:

void virtualGeometryChanged(const QRect &rect)

См. также availableSize() и virtualSiblings().

[read-only] depth : const int

Это свойство содержит цветоглубину экрана.

Функции доступа:

int depth() const

[read-only, since 5.5] devicePixelRatio : const qreal

Это свойство содержит отношение между физическими пикселями и пикселями независимыми от устройства для экрана.

Возвращает отношение между физическими пикселями и пикселями, независимыми от устройства, для экрана.

Типичные значения: 1.0 для обычных дисплеев и 2.0 для дисплеев "ретина". Возможны и другие значения.

Это свойство было введено в Qt 5.5.

Функции доступа:

qreal devicePixelRatio() const

Сигнал уведомления:

void physicalDotsPerInchChanged(qreal dpi)

См. также QWindow::devicePixelRatio() и QGuiApplication::devicePixelRatio().

[read-only] geometry : const QRect

Это свойство содержит геометрию экрана в пикселях.

Например, может возвращать QRect(0, 0, 1280, 1024), или, в случае виртуального рабочего стола, QRect(1280, 0, 1280, 1024).

Функции доступа:

QRect geometry() const

Сигнал уведомления:

void geometryChanged(const QRect &geometry)

[read-only] logicalDotsPerInch : const qreal

Это свойство содержит количество логических точек или пикселей на дюйм.

Это значение может использоваться для преобразования размеров шрифта в пиксели.

Это удобное свойство, которое просто является средним значением свойств logicalDotsPerInchX и logicalDotsPerInchY.

Функции доступа:

qreal logicalDotsPerInch() const

Сигнал уведомления:

void logicalDotsPerInchChanged(qreal dpi)

См. также logicalDotsPerInchX() и logicalDotsPerInchY().

[read-only] logicalDotsPerInchX : const qreal

Это свойство содержит количество логических точек или пикселей на дюйм в горизонтальном направлении.

Это значение используется для преобразования размеров шрифта в пиксели.

Функции доступа:

qreal logicalDotsPerInchX() const

Сигнал уведомления:

void logicalDotsPerInchChanged(qreal dpi)

См. также logicalDotsPerInchY().

[read-only] logicalDotsPerInchY : const qreal

Это свойство содержит количество логических точек или пикселей на дюйм в вертикальном направлении.

Это значение используется для преобразования размеров шрифта в пиксели.

Функции доступа:

qreal logicalDotsPerInchY() const

Сигнал уведомления:

void logicalDotsPerInchChanged(qreal dpi)

См. также logicalDotsPerInchX().

[read-only, since 5.9] manufacturer : const QString

Это свойство содержит производителя экрана.

Это свойство было введено в Qt 5.9.

Функции доступа:

QString manufacturer() const

[read-only, since 5.9] model : const QString

Это свойство содержит модель экрана.

Это свойство было введено в Qt 5.9.

Функции доступа:

QString model() const

[read-only] name : const QString

Это свойство содержит строку, представляющую экран в удобном для пользователя формате.

Например, в X11 они соответствуют именам экранов XRandr, обычно "VGA1", "HDMI1" и т. д.

Функции доступа:

QString name() const

[read-only, since 5.2] nativeOrientation : const Qt::ScreenOrientation

Это свойство содержит родную ориентацию экрана

Родная ориентация экрана — это ориентация, в которой значок логотипа устройства отображается правильно, или Qt::PrimaryOrientation, если платформа не поддерживает эту функциональность.

Родная ориентация — свойство аппаратного обеспечения и не меняется.

Это свойство было введено в Qt 5.2.

Функции доступа:

Qt::ScreenOrientation nativeOrientation() const

[read-only] orientation : const Qt::ScreenOrientation

Это свойство содержит ориентацию экрана

Свойство orientation указывает ориентацию экрана с точки зрения системного окна.

Большинство мобильных устройств и планшетов содержат датчики акселерометра. Модуль Qt Sensors предоставляет возможность прямого считывания данных с этого датчика. Однако система окон может автоматически вращать весь экран в зависимости от того, как он удерживается; в этом случае свойство orientation изменится.

Функции доступа:

Qt::ScreenOrientation orientation() const

Сигнал уведомления:

void orientationChanged(Qt::ScreenOrientation orientation)

См. также primaryOrientation() и QWindow::contentOrientation().

[read-only] physicalDotsPerInch : const qreal

Это свойство содержит количество физических точек или пикселей на дюйм

Это значение представляет плотность пикселей на экране. В зависимости от информации, предоставляемой базовой системой, значение может быть не совсем точным.

Это удобное свойство, представляющее собой просто среднее значение свойств physicalDotsPerInchX и physicalDotsPerInchY.

Примечание: Физический DPI выражается в независимых от устройства точках. Умножьте на QScreen::devicePixelRatio(), чтобы получить плотность, зависящую от устройства.

Функции доступа:

qreal physicalDotsPerInch() const

Сигнал уведомления:

void physicalDotsPerInchChanged(qreal dpi)

См. также physicalDotsPerInchX() и physicalDotsPerInchY().

[read-only] physicalDotsPerInchX : const qreal

Это свойство содержит количество физических точек или пикселей на дюйм в горизонтальном направлении

Это значение представляет фактическую горизонтальную плотность пикселей на экране. В зависимости от информации, предоставляемой базовой системой, значение может быть не совсем точным.

Примечание: Физический DPI выражается в независимых от устройства точках. Умножьте на QScreen::devicePixelRatio(), чтобы получить плотность, зависящую от устройства.

Функции доступа:

qreal physicalDotsPerInchX() const

Сигнал уведомления:

void physicalDotsPerInchChanged(qreal dpi)

См. также physicalDotsPerInchY().

[read-only] physicalDotsPerInchY : const qreal

Это свойство содержит количество физических точек или пикселей на дюйм в вертикальном направлении

Это значение представляет фактическую вертикальную плотность пикселей на экране. В зависимости от информации, предоставляемой базовой системой, значение может быть не совсем точным.

Примечание: Физический DPI выражается в независимых от устройства точках. Умножьте на QScreen::devicePixelRatio(), чтобы получить плотность, зависящую от устройства.

Функции доступа:

qreal physicalDotsPerInchY() const

Сигнал уведомления:

void physicalDotsPerInchChanged(qreal dpi)

См. также physicalDotsPerInchX().

[read-only] physicalSize : const QSizeF

Это свойство содержит физический размер экрана (в миллиметрах)

Физический размер представляет собой фактические физические размеры дисплея экрана.

В зависимости от информации, предоставляемой базовой системой, значение может быть не совсем точным.

Функции доступа:

QSizeF physicalSize() const

Сигнал уведомления:

void physicalSizeChanged(const QSizeF &size)

[read-only] primaryOrientation : const Qt::ScreenOrientation

Это свойство содержит основную ориентацию экрана

Основная ориентация экрана — это Qt::LandscapeOrientation, если ширина геометрии экрана больше или равна высоте, или Qt::PortraitOrientation в противном случае. Это свойство может измениться при изменении ориентации экрана (например, при повороте дисплея). Однако поведение зависит от платформы и часто может быть указано в файле манифеста приложения.

Функции доступа:

Qt::ScreenOrientation primaryOrientation() const

Сигнал уведомления:

void primaryOrientationChanged(Qt::ScreenOrientation orientation)

[read-only] refreshRate : const qreal

Это свойство содержит приблизительную вертикальную частоту обновления экрана в Гц

Функции доступа:

qreal refreshRate() const

Сигнал уведомления:

void refreshRateChanged(qreal refreshRate)

[read-only, since 5.9] serialNumber : const QString

Это свойство содержит серийный номер экрана

Это свойство было введено в Qt 5.9.

Функции доступа:

QString serialNumber() const

[read-only] size : const QSize

Это свойство содержит разрешение пикселей экрана

Функции доступа:

QSize size() const

Сигнал уведомления:

void geometryChanged(const QRect &geometry)

[read-only] virtualGeometry : const QRect

Это свойство содержит пиксельную геометрию виртуального рабочего стола, к которому относится этот экран

Возвращает пиксельную геометрию виртуального рабочего стола, соответствующего этому экрану.

Это объединение индивидуальных геометрий виртуальных "братьев" (по экранам).

Функции доступа:

QRect virtualGeometry() const

Сигнал уведомления:

void virtualGeometryChanged(const QRect &rect)

См. также virtualSiblings().

[read-only] virtualSize : const QSize

Это свойство содержит размер в пикселях виртуального рабочего стола, к которому относится этот экран.

Возвращает размер в пикселях виртуального рабочего стола, соответствующего этому экрану.

Это совокупный размер индивидуальных геометрий виртуальных экранов-побратимов.

Функции доступа:

QSize virtualSize() const

Сигнал оповещения:

void virtualGeometryChanged(const QRect &rect)

См. также virtualSiblings().

Документация по функциям-членам

[signal] void QScreen::orientationChanged(Qt::ScreenOrientation orientation)

Этот сигнал генерируется при изменении ориентации экрана со значением orientation в качестве аргумента.

Примечание: Сигнал оповещения для свойства orientation.

См. также orientation().

[signal] void QScreen::primaryOrientationChanged(Qt::ScreenOrientation orientation)

Этот сигнал генерируется при изменении первичной ориентации экрана со значением orientation в качестве аргумента.

Примечание: Сигнал оповещения для свойства primaryOrientation.

См. также primaryOrientation().

[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 = 0, int x = 0, int y = 0, int width = -1, int height = -1)

Создаёт и возвращает объект pixmap, созданный путём захвата содержимого заданного окна window, ограниченного QRect(x, y, width, height). Если window равно 0, то будет захвачен весь экран.

Аргументы (x, y) задают смещение в окне, а (width, height) — область для копирования. Если width отрицательное, функция копирует всё до правой границы окна. Если height отрицательное, функция копирует всё до нижней границы окна.

Аргументы смещения и размера задаются в независимых от устройства пикселях. Возвращаемый pixmap может быть больше, чем запрошенный размер, при захвате с экрана с высоким разрешением. Используйте QPixmap::devicePixelRatio() для определения этого.

Идентификатор окна системы (WId) можно получить, используя функцию QWidget::winId(). Причина использования идентификатора окна, а не QWidget, заключается в возможности захвата окон, которые не являются частью приложения, рамок системы окон и т.д.

Предупреждение: Захват окон, не являющихся частью приложения, не поддерживается на системах, таких как iOS, где ограничение доступа/безопасность предотвращает чтение пикселей окон, не принадлежащих приложению.

Функция grabWindow() захватывает пиксели с экрана, а не из окна, т.е. если другое окно частично или полностью перекрывает то, которое вы захватываете, вы также получите пиксели из наложенного окна.

Курсор мыши обычно не захватывается.

Примечание по X11: если у заданного window глубина не такая же, как у корневого окна, и другое окно частично или полностью заслоняет то, которое вы захватываете, вы не получите пиксели из наложенного окна. Содержимое скрытых областей в pixmap будет неопределённым и незаполненным.

В Windows Vista и выше захват наложенного окна, созданного путём установки атрибута Qt::WA_TranslucentBackground, не сработает. Вместо этого следует захватить окно рабочего стола.

Предупреждение: В общем случае захват области за пределами экрана небезопасен. Это зависит от используемой системы окон.

QPlatformScreen *QScreen::handle() const

Получение десктопного объекта экрана.

См. также Qt Platform Abstraction (QPA).

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 экрана.

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 экрана.

[since 5.15] QScreen *QScreen::virtualSiblingAt(QPoint point)

Возвращает экран в точке point в наборе QScreen::virtualSiblings, или nullptr если вне любого экрана.

Точка point относится к virtualGeometry() каждого набора виртуальных экранов-побратимов.

Эта функция была введена в Qt 5.15.

QList<QScreen *> QScreen::virtualSiblings() const

Получение виртуальных экранов-побратимов.

Виртуальные экраны-побратимы — это экземпляры экранов, которые разделяют один и тот же виртуальный рабочий стол. Они используют общую систему координат, и окна могут свободно перемещаться или размещаться на них без необходимости их пересоздания.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qscreen.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API