Ajout de l'affichage des données dans la fenêtre CAN Viewer

This commit is contained in:
2023-01-15 13:56:02 -05:00
parent e0c3c3a979
commit 51fb065a42
11 changed files with 193 additions and 16 deletions
+54
View File
@@ -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;
}
+5
View File
@@ -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;
};
+2 -2
View File
@@ -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>