qt 读取手机传感器
程序员文章站
2022-04-19 10:22:04
...
手机界面对qt 里面的ui界面支持很低,如果想做个好看的界面还是用qml去搞吧。通过assitant的查找,发现手机有如下传感器可以使用:
这里我就挑几个来说,其他的都类似。下面是QAccelerometer 和 Gyroscope ,代码如下:
#include "mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
setAttribute(Qt::AA_SynthesizeTouchForUnhandledMouseEvents);
setAttribute(Qt::WA_AcceptTouchEvents);
ui->setupUi(this);
gyroscope = new QGyroscope(this);
gyroscope->start();
reader = gyroscope->reading();
acceler = new QAccelerometer(this);
acceler->setAccelerationMode(QAccelerometer::Combined);
acceler->start();
accelereader = acceler->reading();
qreal x = reader->x();
qreal y = reader->y();
qreal z = reader->z();
ui->lcdNumber->display(x);
ui->lcdNumber->display(y);
ui->lcdNumber->display(z);
x = accelereader->x();
y = accelereader->y();
z = accelereader->z();
ui->lcdNumber_4->display(x);
ui->lcdNumber_5->display(y);
ui->lcdNumber_6->display(z);
timer = new QTimer();
timer->setInterval(1000);
connect(timer,SIGNAL(timeout()),this,SLOT(on_pushButton_clicked()));
timer->start();
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_pushButton_clicked()
{
qreal x = reader->x();
qreal y = reader->y();
qreal z = reader->z();
ui->lcdNumber->display(x);
ui->lcdNumber_2->display(y);
ui->lcdNumber_3->display(z);
x = accelereader->x();
y = accelereader->y();
z = accelereader->z();
ui->lcdNumber_4->display(x);
ui->lcdNumber_5->display(y);
ui->lcdNumber_6->display(z);
}
上一篇: android手机传感器总结
下一篇: 手机传感器数据分析baseline
推荐阅读
-
php实现读取手机客户端浏览器的类_php技巧
-
Android ContentProvider查看/读取手机联系人实例
-
Android ContentProvider查看/读取手机联系人实例
-
Android编程实现读取手机联系人、拨号、发送短信及长按菜单操作方法实例小结
-
Android编程基于距离传感器控制手机屏幕熄灭的方法详解
-
Android利用方向传感器获得手机的相对角度实例说明
-
Android ContentProvider实现手机联系人读取和插入
-
Android编程实现读取手机联系人、拨号、发送短信及长按菜单操作方法实例小结
-
json格式怎么打开(手机读取json格式文件软件)
-
Android读取用户号码,手机串号,SIM卡序列号的实现代码