检查闪退问题

This commit is contained in:
hm
2021-07-09 17:17:01 +08:00
parent ca4fd40888
commit 56054d9f16
5 changed files with 21 additions and 20 deletions
+12 -7
View File
@@ -235,9 +235,6 @@ void StateWidget::setColor(state s)
bar->style()->polish(bar);
}
//更i性能太多了容易死机
//update();
}
void StateWidget::setValue(QString s)
@@ -250,16 +247,24 @@ void StateWidget::setValue(QString s)
bool flag = false;
double value = s.toDouble(&flag);
double num = s.toDouble(&flag);
value = (qIsNaN(value))?(0):(value);
double value = (qIsNaN(num))?(0):(num);
if(bar)
{
if(value > bar->maximum())
{
bar->setRange(min,value);
}
else if(value > bar->minimum())
{
bar->setRange(value,max);
}
else
{
bar->setRange(min,max);
}
bar->setValue(value);
@@ -323,7 +328,7 @@ void StateWidget::setRange(double m_min,double m_max)
if(bar)
{
bar->setRange(m_min,m_max);
bar->setRange(min,max);
}
}
-2
View File
@@ -38,8 +38,6 @@ DEFINES += QT_DEPRECATED_WARNINGS
# include sub project
#include (./ParameterInspector/ParameterInspector.pri)
#include (./MAVLinkInspector/MAVLinkInspector.pri)
DESTDIR = $$PWD/../bin
MOC_DIR = $$PWD/../build
+2
View File
@@ -90,6 +90,8 @@ void ThreadTemplet::process()//线程函数
break;
}
QThread::yieldCurrentThread();
//thread->exec();
}
}
+6 -4
View File
@@ -25,17 +25,19 @@ public:
signals:
void error(QVariant type);
Q_INVOKABLE void error(QVariant type);
void SendMessageTo(quint8 ch, quint8 *data,quint16 len);
Q_INVOKABLE void SendMessageTo(quint8 ch, quint8 *data,quint16 len);
void showMessage(const QString &message,int TimeOut = 0);
Q_INVOKABLE void showMessage(const QString &message,int TimeOut = 0);
public slots:
//地面站对外接口
void setGCSID(int m_sysid, int m_compid);
void setID(int m_sysid,int m_compid);
//线程对外接口
void setRunFrq(qreal frq);
void start();
@@ -57,7 +59,7 @@ public slots:
//缓存对外接口
void setbuff(quint32 src,QByteArray data);
Q_INVOKABLE void setbuff(quint32 src,QByteArray data);
void initbuff(void);
QByteArray readbuff(quint32 src);
+1 -7
View File
@@ -15,7 +15,7 @@ DLink::DLink(QObject *parent) : QObject(parent)
//在当前线程运行
connect(mavlinknode,SIGNAL(SendMessageTo(quint8,quint8*,quint16)),
this,SLOT(SendMessageTo(quint8,quint8*,quint16)),Qt::BlockingQueuedConnection);//BlockingQueuedConnection);//采用直连的方式,因为是多线程
this,SLOT(SendMessageTo(quint8,quint8*,quint16)),Qt::QueuedConnection);//BlockingQueuedConnection);//信号和槽必须在不同的线程中,否则就产生死锁
//在当前线程运行
connect(mavlinknode,SIGNAL(showMessage(QString,int)),
@@ -33,8 +33,6 @@ DLink::DLink(QObject *parent) : QObject(parent)
connect(this,SIGNAL(getRTK(quint32,QByteArray)),
mavlinknode->rtk,SLOT(setbuff(quint32,QByteArray)),Qt::DirectConnection);
mavlinknode->start();
//其他协议节点。。。
@@ -51,7 +49,6 @@ DLink::DLink(QObject *parent) : QObject(parent)
DLink::~DLink()
{
foreach (serialNode node, serials) {
if(node.port)
{
if(node.port->isOpen())
@@ -65,9 +62,6 @@ DLink::~DLink()
//mavlinknode->stop();
//mavlinknode->deleteLater();
delete mavlinknode;
mavlinknode = nullptr;