Qt for android 截屏、Qml保存图片到本地

本文介绍了在Android环境下使用Qt进行截图的方法,特别是通过Qml的grabToImage()函数来实现截图并保存到本地的过程。文章中提到了grabWindow()方法在Android下的不同,并提供了使用grabToImage()的示例代码,同时指出官方文档中的错误方法为saveToFile()。
摘要由CSDN通过智能技术生成

额、、当你打开这里的时候、估计已经尝试过截图并且失败一次了,别急。

是的,以前在桌面使用grabWindow()截屏刷刷的,很好使的。但是在android下使用还要处理下。

所以Qt在android截屏有至少有如下两种了。

1.grabWindow()处理后使用,也就是给它个window句柄继续使用。当然今天我们这里不讲它。我们讲下一种方法。

2.qml下grabToImage()截图

其实在保存图片方面,qml也给了我们很多种方法了,我们来讲下其中的grabToImage()方法。它是属于Item的&

以下是一个使用 Qt QMLAndroid Bluetooth API 创建蓝牙应用程序的示例代码: Bluetooth.qml: ``` import QtQuick 2.12 import QtBluetooth 5.12 Rectangle { id: root width: 400 height: 400 BluetoothDiscoveryModel { id: discoveryModel onDeviceDiscovered: { console.log("Discovered device:", device.name, device.address) } } ListView { id: deviceListView width: parent.width height: parent.height model: discoveryModel delegate: BluetoothDeviceDelegate { text: modelData.name onClicked: { var result = Qt.bluetooth.connectToDevice(modelData.address) console.log("Connection result:", result) } } } Button { id: discoveryButton text: "Start discovery" onClicked: { discoveryModel.start() } } } ``` BluetoothDeviceDelegate.qml: ``` import QtQuick 2.12 Rectangle { id: root width: 200 height: 50 color: "#f0f0f0" border.width: 1 border.color: "#ccc" Text { id: nameLabel text: "" anchors.centerIn: parent } MouseArea { anchors.fill: parent onClicked: { root.clicked() } } signal clicked() } ``` 在 main.cpp 中,需要添加以下代码以启用 Android 的蓝牙支持: ``` #include <QtAndroidExtras> ... QAndroidJniObject activity = QtAndroid::androidActivity(); QAndroidJniObject bluetoothAdapter = QAndroidJniObject::callStaticObjectMethod("android/bluetooth/BluetoothAdapter", "getDefaultAdapter", "()Landroid/bluetooth/BluetoothAdapter;"); ``` 在 AndroidManifest.xml 中,需要添加以下权限: ``` <uses-permission android:name="android.permission.BLUETOOTH"/> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/> ``` 这是一个简单的蓝牙应用程序的示例代码,你可以根据自己的需求进行修改和扩展。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值