CurrentScreen.qml Example File
window/CurrentScreen.qml
import QtQuick 2.3
import QtQuick.Window 2.10
import "../shared" as Shared
Item {
id: root
width: 400
height: propertyGrid.implicitHeight + 16
function orientationToString(o) {
switch (o) {
case Qt.PrimaryOrientation:
return "primary";
case Qt.PortraitOrientation:
return "portrait";
case Qt.LandscapeOrientation:
return "landscape";
case Qt.InvertedPortraitOrientation:
return "inverted portrait";
case Qt.InvertedLandscapeOrientation:
return "inverted landscape";
}
return "unknown";
}
Grid {
id: propertyGrid
columns: 2
spacing: 8
x: spacing
y: spacing
Shared.Label {
text: "Screen \"" + Screen.name + "\":"
font.bold: true
}
Item { width: 1; height: 1 }
Shared.Label { text: "manufacturer" }
Shared.Label { text: Screen.manufacturer ? Screen.manufacturer : "unknown" }
Shared.Label { text: "model" }
Shared.Label { text: Screen.model ? Screen.model : "unknown" }
Shared.Label { text: "serial number" }
Shared.Label { text: Screen.serialNumber ? Screen.serialNumber : "unknown" }
Shared.Label { text: "dimensions" }
Shared.Label { text: Screen.width + "x" + Screen.height }
Shared.Label { text: "pixel density" }
Shared.Label { text: Screen.pixelDensity.toFixed(2) + " dots/mm (" + (Screen.pixelDensity * 25.4).toFixed(2) + " dots/inch)" }
Shared.Label { text: "logical pixel density" }
Shared.Label { text: Screen.logicalPixelDensity.toFixed(2) + " dots/mm (" + (Screen.logicalPixelDensity * 25.4).toFixed(2) + " dots/inch)" }
Shared.Label { text: "device pixel ratio" }
Shared.Label { text: Screen.devicePixelRatio.toFixed(2) }
Shared.Label { text: "available virtual desktop" }
Shared.Label { text: Screen.desktopAvailableWidth + "x" + Screen.desktopAvailableHeight }
Shared.Label { text: "position in virtual desktop" }
Shared.Label { text: Screen.virtualX + ", " + Screen.virtualY }
Shared.Label { text: "orientation" }
Shared.Label { text: orientationToString(Screen.orientation) + " (" + Screen.orientation + ")" }
Shared.Label { text: "primary orientation" }
Shared.Label { text: orientationToString(Screen.primaryOrientation) + " (" + Screen.primaryOrientation + ")" }
Shared.Label { text: "10mm rectangle" }
Rectangle {
color: "red"
width: Screen.pixelDensity * 10
height: width
}
}
}