Spec-Zone.ru › Qt 5.6

Класс QDesktopWidget

Класс QDesktopWidget предоставляет доступ к информации о экранах в системах с несколькими мониторами. Подробнее...

Заголовок: #include <QDesktopWidget>
qmake: QT += widgets
Наследует: QWidget
  • Список всех членов, включая унаследованные
  • Устаревшие члены

Свойства

  • primaryScreen : const int
  • screenCount : const int
  • virtualDesktop : const bool
  • 58 свойств унаследовано от QWidget
  • 1 свойство унаследовано от QObject

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

const QRect availableGeometry(int screen = -1) const
const QRect availableGeometry(const QWidget *widget) const
const QRect availableGeometry(const QPoint &p) const
bool isVirtualDesktop() const
int primaryScreen() const
QWidget * screen(int screen = -1)
int screenCount() const
const QRect screenGeometry(int screen = -1) const
const QRect screenGeometry(const QWidget *widget) const
const QRect screenGeometry(const QPoint &p) const
int screenNumber(const QWidget *widget = Q_NULLPTR) const
int screenNumber(const QPoint &point) const
  • 211 открытых функций унаследовано от QWidget
  • 31 открытых функций унаследовано от QObject
  • 14 открытых функций унаследовано от QPaintDevice

Сигналы

void primaryScreenChanged()
void resized(int screen)
void screenCountChanged(int newCount)
void workAreaResized(int screen)
  • 3 сигнала унаследовано от QWidget
  • 2 сигнала унаследовано от QObject

Переопределённые защищённые функции

virtual void resizeEvent(QResizeEvent *event)
  • 35 защищённых функций унаследовано от QWidget
  • 9 защищённых функций унаследовано от QObject
  • 1 защищённая функция унаследовано от QPaintDevice

Дополнительные унаследованные члены

  • 19 открытых слотов унаследовано от QWidget
  • 1 открытый слот унаследовано от QObject
  • 5 статических открытых членов унаследовано от QWidget
  • 11 статических открытых членов унаследовано от QObject
  • 35 защищённых функций унаследовано от QWidget
  • 9 защищённых функций унаследовано от QObject
  • 1 защищённая функция унаследовано от QPaintDevice
  • 1 защищённый слот унаследовано от QWidget

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

Класс QDesktopWidget предоставляет доступ к информации о экранах в системах с несколькими мониторами.

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

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

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

Получение виджета рабочего стола

Функция QApplication::desktop() используется для получения экземпляра QDesktopWidget.

Функция screenGeometry() виджета предоставляет информацию о геометрии доступных экранов. Количество доступных экранов возвращается свойством screenCount, а сигнал screenCountChanged() генерируется при добавлении или удалении экранов. Номер экрана, на котором находится определённая точка или виджет, возвращается функцией screenNumber().

Геометрия экрана

Чтобы получить размеры конкретного экрана, вызовите функцию screenGeometry(). В некоторых средах рабочего стола не весь экран доступен для использования приложениями; например, панель задач или панель меню могут занимать некоторое пространство. Используйте функцию availableGeometry(), чтобы получить доступную область для приложений.

QDesktopWidget также наследует свойства QWidget, width() и height(), которые указывают размер рабочего стола. Однако для рабочих столов с несколькими экранами размер рабочего стола представляет собой объединение размеров всех экранов, поэтому width() и height() не должны использоваться для вычисления размера виджета, который должен быть размещён на одном из экранов.

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

Использование основного экрана

Для приложения основным экраном является экран, на котором находится основной виджет. Он хранится в свойстве primaryScreen. Все окна, открытые в контексте приложения, должны быть ограничены границами основного экрана; например, неудобно, если диалоговое окно появляется на другом экране или разделено между двумя экранами.

Managing Multiple Screens

На иллюстрации выше, основной экран приложения One - экран 0, а основной экран приложения Two - экран 1.

См. также QApplication и QApplication::desktop().

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

primaryScreen : const int

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

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

int primaryScreen() const

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

void primaryScreenChanged()

screenCount : const int

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

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

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

int screenCount() const

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

void screenCountChanged(int newCount)

virtualDesktop : const bool

Если система управляет доступными экранами в виртуальном рабочем столе.

Для виртуальных рабочих столов screen() всегда возвращает тот же виджет. Размер виртуального рабочего стола равен размеру этого виджета рабочего стола.

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

bool isVirtualDesktop() const

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

const QRect QDesktopWidget::availableGeometry(int screen = -1) const

Возвращает доступную геометрию экрана с индексом screen. Доступная область будет подпрямоугольником screenGeometry() в соответствии с тем, что платформа определяет как доступную (например, исключает панель задач и строку меню в macOS или панель задач в Windows). Используется экран по умолчанию, если screen равно -1.

См. также screenNumber() и screenGeometry().

const QRect QDesktopWidget::availableGeometry(const QWidget *widget) const

Это перегруженная функция.

Возвращает доступную геометрию экрана, содержащего widget.

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

const QRect QDesktopWidget::availableGeometry(const QPoint &p) const

Это перегруженная функция.

Возвращает доступную геометрию экрана, содержащего p.

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

[signal] void QDesktopWidget::primaryScreenChanged()

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

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

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

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

См. также primaryScreen и screenGeometry().

[virtual protected] void QDesktopWidget::resizeEvent(QResizeEvent *event)

Переопределено из QWidget::resizeEvent().

[signal] void QDesktopWidget::resized(int screen)

Этот сигнал излучается при изменении размера screen.

QWidget *QDesktopWidget::screen(int screen = -1)

Возвращает виджет, представляющий экран с индексом screen (значение -1 означает экран по умолчанию).

Если система использует виртуальный рабочий стол, возвращаемый виджет будет иметь геометрию всего виртуального рабочего стола; т.е., объединяя все screen.

См. также primaryScreen, screenCount и virtualDesktop.

[signal] void QDesktopWidget::screenCountChanged(int newCount)

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

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

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

См. также screenCount.

const QRect QDesktopWidget::screenGeometry(int screen = -1) const

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

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

const QRect QDesktopWidget::screenGeometry(const QWidget *widget) const

Это перегруженная функция.

Возвращает геометрию экрана, содержащего widget.

const QRect QDesktopWidget::screenGeometry(const QPoint &p) const

Это перегруженная функция.

Возвращает геометрию экрана, содержащего p.

int QDesktopWidget::screenNumber(const QWidget *widget = Q_NULLPTR) const

Возвращает индекс экрана, содержащего большую часть widget, или -1, если виджет не на экране.

См. также primaryScreen.

int QDesktopWidget::screenNumber(const QPoint &point) const

Это перегруженная функция.

Возвращает индекс экрана, содержащего point, или экран, ближайший к point.

См. также primaryScreen.

[signal] void QDesktopWidget::workAreaResized(int screen)

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

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

Spec-Zone.ru

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