Ajout de l'affichage des données dans la fenêtre CAN Viewer
This commit is contained in:
@@ -1,14 +1,68 @@
|
||||
#include "CANViewerPage.h"
|
||||
#include "ui_CANViewerPage.h"
|
||||
#include "defines.h"
|
||||
|
||||
CCANViewerPage::CCANViewerPage(QWidget *parent) :
|
||||
QWidget(parent),
|
||||
ui(new Ui::CCANViewerPage)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
ui->mCANDataTableWidget->setColumnCount(6);
|
||||
ui->mCANDataTableWidget->setHorizontalHeaderLabels(QStringList() << "Time" << "Channel" << "Msg ID" << "Msg Type" << "Msg Length" << "Data");
|
||||
|
||||
}
|
||||
|
||||
CCANViewerPage::~CCANViewerPage()
|
||||
{
|
||||
delete ui;
|
||||
}
|
||||
|
||||
int CCANViewerPage::UpdateCANTable(QList<CCANMessage *> MsgList)
|
||||
{
|
||||
for(int Col = 0; Col < ui->mCANDataTableWidget->columnCount(); Col++)
|
||||
{
|
||||
for(int Row = 0; Row < ui->mCANDataTableWidget->rowCount(); Row++)
|
||||
{
|
||||
delete ui->mCANDataTableWidget->item(Row,Col);
|
||||
}
|
||||
}
|
||||
ui->mCANDataTableWidget->clearContents();
|
||||
ui->mCANDataTableWidget->setRowCount(0);
|
||||
|
||||
ui->mCANDataTableWidget->setRowCount(MsgList.size());
|
||||
for(int Msg = 0; Msg < MsgList.size(); Msg++)
|
||||
{
|
||||
QTableWidgetItem *NewItem;
|
||||
|
||||
NewItem = new QTableWidgetItem("Time");
|
||||
ui->mCANDataTableWidget->setItem(Msg,0,NewItem);
|
||||
|
||||
//Set chanel value
|
||||
NewItem = new QTableWidgetItem(QString("%1").arg(MsgList.at(Msg)->mCANChannel));
|
||||
ui->mCANDataTableWidget->setItem(Msg,1,NewItem);
|
||||
|
||||
//Set message ID value
|
||||
NewItem = new QTableWidgetItem(QString("0x%1").arg(MsgList.at(Msg)->mCANMsgID,0,16));
|
||||
ui->mCANDataTableWidget->setItem(Msg,2,NewItem);
|
||||
|
||||
//Set message type value
|
||||
NewItem = new QTableWidgetItem(QString("0x%1").arg(MsgList.at(Msg)->mCANMsgType,0,16));
|
||||
ui->mCANDataTableWidget->setItem(Msg,3,NewItem);
|
||||
|
||||
//Set message length value
|
||||
NewItem = new QTableWidgetItem(QString("%1").arg(MsgList.at(Msg)->mCANMsgLength));
|
||||
ui->mCANDataTableWidget->setItem(Msg,4,NewItem);
|
||||
|
||||
//Set data value
|
||||
QString Data;
|
||||
for(int i = 0; i < MsgList.at(Msg)->mCANMsgLength; i++)
|
||||
{
|
||||
unsigned char DataByte = MsgList.at(Msg)->mCANMsgData.at(i);
|
||||
Data.append(QString("%1 ").arg(DataByte,2,16,QLatin1Char('0')));
|
||||
}
|
||||
NewItem = new QTableWidgetItem(Data);
|
||||
ui->mCANDataTableWidget->setItem(Msg,5,NewItem);
|
||||
}
|
||||
|
||||
return RET_OK;
|
||||
}
|
||||
|
||||
@@ -2,6 +2,8 @@
|
||||
#define CANVIEWERPAGE_H
|
||||
|
||||
#include <QWidget>
|
||||
#include "CANMessage.h"
|
||||
#include <QList>
|
||||
|
||||
namespace Ui {
|
||||
class CCANViewerPage;
|
||||
@@ -15,6 +17,9 @@ public:
|
||||
explicit CCANViewerPage(QWidget *parent = 0);
|
||||
~CCANViewerPage();
|
||||
|
||||
|
||||
int UpdateCANTable(QList<CCANMessage*> MsgList);
|
||||
|
||||
private:
|
||||
Ui::CCANViewerPage *ui;
|
||||
};
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<property name="windowTitle">
|
||||
<string>Form</string>
|
||||
</property>
|
||||
<widget class="QTableWidget" name="tableWidget">
|
||||
<widget class="QTableWidget" name="mCANDataTableWidget">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>30</x>
|
||||
@@ -23,7 +23,7 @@
|
||||
</rect>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="pushButton">
|
||||
<widget class="QPushButton" name="mClearCANDataBtn">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>70</x>
|
||||
|
||||
Reference in New Issue
Block a user