错误的屏幕尺寸值

问题描述 投票:0回答:1

我创建了测试QML应用程序以显示屏幕尺寸。

它在Xiaomi Redmi 6上进行了测试。设备屏幕分辨率为720 x 1440像素。

我有360 x696。有什么想法吗?

Windows 7 64位,Qt 5.14.1,jdk1.8.0_241。

main.qml:

import QtQuick 2.12
import QtQuick.Window 2.12

Window {
    visible: true
    width: 720
    height: 1440
    title: qsTr("Hello World")

    Column {
        anchors.centerIn: parent

        Text {
            text: "Screen.width: " + Screen.width
            color: "lightsteelblue"
        }

        Text {
            text: "Screen.height: " + Screen.height
            color: "lightsteelblue"
        }
    }

    MouseArea {
        anchors.fill: parent
        onClicked: {
            // ScreenSize == QGuiApplication::primaryScreen()->size()
            console.log( ScreenSize.height, ScreenSize.width);
        }
    }

}

控制台输出:

D libTest2_armeabi-v7a.so: qml: 696 360

“截图”

qt qml size screen
1个回答
0
投票

我这样说:DPI Awarenessanswer帮助了我。

int main(int argc, char *argv[])
{
    argc = 3;
    argv[0] = (char*)"Appname";
    argv[1] = (char*)"--platform";
    argv[2] = (char*)"android:dpiawareness=0";

    QGuiApplication app(argc, argv);
    ...
}

我将“ windows”更改为“ android”。现在它可以正常工作了。虽然功能不是为Android设计的。我删除附加代码字符串后,它仍然可以正常工作。应用程序在初始状态下运行良好。某些内容切换到了Qt。

© www.soinside.com 2019 - 2024. All rights reserved.