qt on android 桌面鼠标事件,關於Qt on Android,程序安裝到手機,界面只占到一小部分。...

本文主要讨论了在Qt5.7环境下,针对三星I9300手机(运行CM13,Android 6.0系统)的界面显示问题。程序代码示例中,QQuickView的界面在手机上只能占据左上角320x480像素区域,而非全屏。提出了两种可能的解决方案:1)调整控件属性;2)利用Qt自带的quickview示例设置全屏。但作者表示这两种方法并未完全解决问题,感到困扰。
摘要由CSDN通过智能技术生成

環境為Qt5.7。

手機界面:

107c23c2d6a8e608b40cede799600714.png

PC界面:

fce8f68e9d6eb8c69e909ad16728a7ec.png

程序如下,手機為三星I9300,rom為CM13,6.0系統。 想知道如何占滿屏幕

main.cpp

#include 

#include 

#include 

int main(int argc, char *argv[])

{

QGuiApplication app(argc, argv);

QQuickView viewer;

viewer.setSource(QUrl("qrc:/main.qml"));

viewer.setMinimumSize(QSize(360, 480));

viewer.show();

return app.exec();

}

mian.qml

import QtQuick 2.7

import QtQuick.Window 2.2

import QtQuick.Controls 2.0

import QtQuick.Controls.Styles 1.4

import QtQuick.Dialogs 1.2

Row {

anchors.rightMargin: 0

anchors.bottomMargin: 0

anchors.leftMargin: 0

anchors.topMargin: 0

anchors.fill: parent

spacing: 20

Column {

width: 200

spacing: 16

Text {

id: sliderStat

color: "blue"

text: "current - 0.1"

}

Slider {

width: 200

height: 30

stepSize: 0.01

value: 0.1

onValueChanged: {

sliderStat.text = "current - " + value

}

}

Slider {

width: 200

height: 30

orientation: Qt.Horizontal

clip: false

visible: true

from: 0

to: 100

stepSize: 1

value: 50

}

Slider {

id: customGrooveAndHandle

width: 200

height: 30

stepSize: 0.1

value: 0

//groove: Rectangle {

//}

}

Slider {

id: control

value: 0.5

background: Rectangle {

x: control.leftPadding

y: control.topPadding + control.availableHeight / 2 - height / 2

implicitWidth: 200

implicitHeight: 4

width: control.availableWidth

height: 50//implicitHeight

radius: 2

color: "#bdbebf"

Rectangle {

width: control.visualPosition * parent.width

height: parent.height

color: "#21be2b"

radius: 2

}

}

handle: Rectangle {

x: control.leftPadding + control.visualPosition * (control.availableWidth - width)

y: control.topPadding + control.availableHeight / 2 - height / 2

implicitWidth: 10

implicitHeight: 50

radius: 10

color: control.pressed ? "#f0f0f0" : "#f6f6f6"

border.color: "#bdbebf"

}

}

Slider {

id: control1

value: 0.5

orientation: Qt.Vertical

background: Rectangle {

x: control1.leftPadding + control1.availableWidth / 2 - width / 2

y: control1.topPadding

implicitWidth: 200 //隱式的

implicitHeight: 200

width: 50

height: control1.availableHeight//50//implicitHeight

radius: 2

color: "#bdbebf"

Rectangle {

width: parent.width//control1.visualPosition * parent.width

height: control1.visualPosition * parent.height

color: "#21be2b"

radius: 2

}

}

handle: Rectangle {

x: control1.leftPadding + control1.availableWidth / 2 - width / 2

y: control1.bottomPadding + control1.visualPosition * (control1.availableHeight - height)

implicitWidth: 50

implicitHeight: 10

radius: 10

color: control1.pressed ? "#f0f0f0" : "#f6f6f6"

border.color: "#bdbebf"

}

}

}

}

2 个解决方案

#1

控件屬性設置下

#2

Qt自帶quickview的例程差不多只要設置的320*480的,打包進手機運行都 只占用手機左上角320*480,感覺好坑。請問樓主解決了嗎??

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值