QScreen Class
QScreenクラスは、スクリーンのプロパティを照会するために使用されます。詳細...
ヘッダー | #include <QScreen> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
qmake: | QT += gui |
継承: | QObject |
プロパティ
|
|
パブリック機能
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 |
QNativeInterface * | nativeInterface() 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は、利用可能な場合は実際の物理的なピクセル・サイズに基づいており、印刷プレビューなど、画面に表示されるコンテンツの正確な物理的寸法を知りたい場合に便利です。
論理ドット/インチは、フォントやユーザーインターフェイス要素をポイントサイズからピクセルサイズに変換するために使用され、物理ドット/インチとは異なる場合があります。論理ドット/インチは、デスクトップ環境の設定パネルでユーザーが設定できる場合があり、ユーザーがさまざまなアプリケーションでUIやフォントのサイズをグローバルに制御できるようにします。
注: 物理DPIも論理DPIも、デバイスに依存しないドット数で表されます。デバイス依存の密度を得るには、QScreen::devicePixelRatio ()を掛けます。
プロパティ・ドキュメンテーション
[read-only]
availableGeometry : const QRect
このプロパティは、画面の使用可能なジオメトリをピクセル単位で保持する。
利用可能なジオメトリは、タスクバーやシステムメニューなどのウィンドウマネージャが予約した領域を除いたジオメトリです。
X11では、1つのモニタを持つシステムで、ウィンドウマネージャが_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]
devicePixelRatio : const qreal
このプロパティは、画面の物理ピクセルとデバイス非依存ピクセルの比率を保持する。
画面の物理ピクセルとデバイス非依存ピクセルの比率を返します。
一般的な値は、通常のディスプレイで1.0、"retina "ディスプレイで2.0です。それ以上の値も可能である。
アクセス関数:
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
このプロパティは、1インチあたりの論理ドット数またはピクセル数を保持する。
この値は、フォントのポイントサイズをピクセルサイズに変換するために使用することができます。
これは便宜的なプロパティで、logicalDotsPerInchX とlogicalDotsPerInchY プロパティの平均です。
アクセス関数:
qreal | logicalDotsPerInch() const |
ノーティファイアシグナル:
void | logicalDotsPerInchChanged(qreal dpi) |
logicalDotsPerInchX() およびlogicalDotsPerInchY()も参照 。
[read-only]
logicalDotsPerInchX : const qreal
このプロパティは、水平方向の1インチあたりの論理ドット数またはピクセル数を保持する。
この値は、フォントのポイントサイズをピクセルサイズに変換するために使用される。
アクセス関数:
qreal | logicalDotsPerInchX() const |
通知シグナル:
void | logicalDotsPerInchChanged(qreal dpi) |
logicalDotsPerInchY()も参照 。
[read-only]
logicalDotsPerInchY : const qreal
このプロパティは、垂直方向の1インチあたりの論理ドット数またはピクセル数を保持する。
この値は、フォントのポイントサイズをピクセルサイズに変換するために使用される。
アクセス関数:
qreal | logicalDotsPerInchY() const |
通知シグナル:
void | logicalDotsPerInchChanged(qreal dpi) |
logicalDotsPerInchX()も参照 。
[read-only]
manufacturer : const QString
このプロパティは、スクリーンの製造者を保持する。
アクセス関数:
QString | manufacturer() const |
[read-only]
model : const QString
このプロパティは、スクリーンのモデルを保持する。
アクセス関数:
QString | model() const |
[read-only]
name : const QString
このプロパティは、画面を表すユーザが提示可能な文字列を保持します。
例えば、X11では、これらはXRandrのスクリーン名に対応し、典型的には "VGA1"、"HDMI1 "などである。
注意: ユーザが提示可能な文字列は、ネイティブAPIの結果と一致することは保証されておらず、画面を一意に識別するために使用すべきではありません。
アクセス関数:
QString | name() const |
[read-only]
nativeOrientation : const Qt::ScreenOrientation
このプロパティは、ネイティブの画面の向きを保持します。
画面のネイティブな向きとは、デバイスのロゴステッカーが右向きに表示される向きであり、プラットフォームがこの機能をサポートしていない場合は、Qt::PrimaryOrientation 。
ネイティブの向きはハードウェアのプロパティであり、変更されることはありません。
アクセス機能
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
このプロパティは、1インチあたりの物理的なドット数またはピクセル数を保持する。
この値は、スクリーン・ディスプレイのピクセル密度を表します。基礎となるシステムが提供する情報によっては、この値が完全に正確であるとは限りません。
これは便宜的なプロパティで、physicalDotsPerInchX とphysicalDotsPerInchY プロパティの平均値です。
注: 物理的なDPIは、デバイスに依存しないドット数で表されます。QScreen::devicePixelRatio() を乗算すると、デバイス依存の密度が得られます。
アクセス関数:
qreal | physicalDotsPerInch() const |
ノーティファイア・シグナル:
void | physicalDotsPerInchChanged(qreal dpi) |
physicalDotsPerInchX() およびphysicalDotsPerInchY()も参照 。
[read-only]
physicalDotsPerInchX : const qreal
このプロパティは、水平方向の1インチあたりの物理的なドット数またはピクセル数を保持する。
この値は、画面のディスプレイ上の実際の水平方向のピクセル密度を表します。基礎となるシステムが提供する情報によっては、値が完全に正確でない場合があります。
注: 物理DPIはデバイスに依存しないドット数で表されます。デバイス依存の密度を得るには、QScreen::devicePixelRatio()を掛けます。
アクセス関数:
qreal | physicalDotsPerInchX() const |
通知シグナル:
void | physicalDotsPerInchChanged(qreal dpi) |
physicalDotsPerInchY()も参照 。
[read-only]
physicalDotsPerInchY : const qreal
このプロパティは、垂直方向の1インチあたりの物理的なドット数またはピクセル数を保持する。
この値は、画面のディスプレイ上の実際の垂直方向のピクセル密度を表します。基礎となるシステムが提供する情報によっては、値が完全に正確でない場合があります。
注: 物理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
このプロパティは、画面のおおよその垂直リフレッシュレートをHzで保持する。
警告 QChronoTimer のようなタイマーでアニメーションを駆動するために、画面のリフレッシュ・レートを使用することは避けてください。代わりにQWindow::requestUpdate() を使用してください。
アクセス関数:
qreal | refreshRate() const |
通知シグナル:
void | refreshRateChanged(qreal refreshRate) |
QWindow::requestUpdate()も参照のこと 。
[read-only]
serialNumber : const QString
このプロパティは、スクリーンのシリアル番号を保持する。
アクセス関数:
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()も参照 。
メンバ関数ドキュメント
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)
QRect(x,y,width,height) で制限された指定されたwindow の内容を取り込んで構築された pixmap を作成し、返します。window が 0 の場合、画面全体が取り込まれます。
引数 (x,y) はウィンドウ内のオフセットを指定し、 (width,height) はコピーする領域を指定する。width が負の場合、関数はウィンドウの右境界まですべてをコピーする。height が負の場合、関数はすべてをウィンドウの下部にコピーする。
引数のoffsetとsizeは、デバイスに依存しないピクセル単位で指定します。高DPI画面から取得する場合、返される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
o が横長または逆横長の場合はtrue
を返し、そうでない場合はfalse
を返す便利な関数。
Qt::PrimaryOrientation は画面の () と解釈される。primaryOrientation
bool QScreen::isPortrait(Qt::ScreenOrientation o) const
o が縦長か逆縦長の場合はtrue
を返し、そうでない場合はfalse
を返す便利な関数。
Qt::PrimaryOrientation は画面の () と解釈されます。primaryOrientation
QRect QScreen::mapBetween(Qt::ScreenOrientation a, Qt::ScreenOrientation b, const QRect &rect) const
矩形を 2 つの画面方向の間でマップします。
これは、a がQt::PortraitOrientation またはQt::InvertedPortraitOrientation で、b がQt::LandscapeOrientation またはQt::InvertedLandscapeOrientation の場合、またはその逆の場合に、矩形rect の x と y の寸法を反転させます。
Qt::PrimaryOrientation は、スクリーンの () として解釈されます。primaryOrientation
template <typename QNativeInterface> QNativeInterface *QScreen::nativeInterface() const
スクリーンの指定された型のネイティブ・インターフェースを返す。
この関数は、QNativeInterface 名前空間で定義されているQScreen のプラットフォーム固有の機能へのアクセスを提供します:
スクリーンのネイティブ・インターフェース | |
Wayland上のスクリーンへのネイティブ・インターフェース | |
スクリーンへのネイティブ・インターフェース |
要求されたインタフェースが利用できない場合、nullptr
が返されます。
[signal]
void QScreen::orientationChanged(Qt::ScreenOrientation orientation)
このシグナルは、orientation を引数として、スクリーンの向きが変化したときに発せられる。
注: orientation プロパティの通知シグナル。
orientation()も参照 。
[signal]
void QScreen::primaryOrientationChanged(Qt::ScreenOrientation orientation)
このシグナルは、orientation を引数として、スクリーンのプライマリ・オリエンテーションが変化したときに発せられる。
注: primaryOrientation プロパティの通知シグナル。
primaryOrientation()も参照のこと 。
QTransform QScreen::transformBetween(Qt::ScreenOrientation a, Qt::ScreenOrientation b, const QRect &target) const
orientationa で定義される座標系から、orientationb と target dimensionstarget で定義される座標系にマップする変換を計算するための便利な関数です。
例: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
QScreen *QScreen::virtualSiblingAt(QPoint point)
QScreen::virtualSiblings() のセット内のpoint にあるスクリーン、またはどのスクリーンの外にもある場合はnullptr
を返す。
point は、仮想兄弟の各セットのvirtualGeometry() との関係である。
QList<QScreen *> QScreen::virtualSiblings() const
スクリーンの仮想兄弟を取得する。
仮想兄弟は、同じ仮想デスクトップを共有するスクリーン・インスタンスである。これらは共通の座標系を共有し、ウィンドウは再作成することなく、自由に移動したり配置したりできる。
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.