将textEdit控件替换为tableWidget,并实现数据在表格中的显示
This commit is contained in:
parent
0daf385ccf
commit
39f2f599a2
|
@ -9,6 +9,10 @@ MainWindow::MainWindow(QWidget *parent)
|
|||
{
|
||||
ui->setupUi(this);
|
||||
|
||||
ui->tableWidget->setColumnCount(12);
|
||||
ui->tableWidget->horizontalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents); // 自适应列宽
|
||||
ui->tableWidget->horizontalHeader()->setMinimumHeight(40);
|
||||
|
||||
pQfile_ori = new QFile;
|
||||
pQfile_key = new QFile;
|
||||
|
||||
|
@ -38,7 +42,8 @@ void MainWindow::OpenExplorerFile(bool isOriFileOpen)
|
|||
QString filePath = QFileDialog::getOpenFileName(this, "选择文件", DesktopLocation, "文本文件(*.txt)");
|
||||
if (filePath.isEmpty() != true) // 判断路径是否有效
|
||||
{
|
||||
ui->textEdit->clear();
|
||||
ui->tableWidget->clear();
|
||||
ui->tableWidget->setRowCount(0);
|
||||
if (isOriFileOpen)
|
||||
{
|
||||
if (pQfile_ori->fileName() != filePath)
|
||||
|
@ -140,7 +145,7 @@ QString MainWindow::GetLampType(uint8_t lampidx)
|
|||
|
||||
QString MainWindow::AppendParse(DATA_TYPEDEF data)
|
||||
{
|
||||
QString ret = nullptr;
|
||||
QString ret = "-";
|
||||
|
||||
switch(data.buf[0])
|
||||
{
|
||||
|
@ -290,29 +295,29 @@ QString MainWindow::AppendParse(DATA_TYPEDEF data)
|
|||
ret += "-";
|
||||
if (data.buf[7] & 0x08)
|
||||
{
|
||||
ret += "m点亮,"
|
||||
ret += "m点亮";
|
||||
}
|
||||
else
|
||||
{
|
||||
ret += "m熄灭"
|
||||
ret += "m熄灭";
|
||||
}
|
||||
|
||||
if (data.buf[7] & 0x02)
|
||||
{
|
||||
ret += "r点亮,"
|
||||
ret += "r点亮";
|
||||
}
|
||||
else
|
||||
{
|
||||
ret += "r熄灭"
|
||||
ret += "r熄灭";
|
||||
}
|
||||
|
||||
if (data.buf[7] & 0x01)
|
||||
{
|
||||
ret += "l点亮,"
|
||||
ret += "l点亮";
|
||||
}
|
||||
else
|
||||
{
|
||||
ret += "l熄灭"
|
||||
ret += "l熄灭";
|
||||
}
|
||||
|
||||
}break;
|
||||
|
@ -748,6 +753,7 @@ void MainWindow::PushButton_Clicked_Parse_clicked()
|
|||
if (isFirstLine == true) // 跳过第一行的解密
|
||||
{
|
||||
isFirstLine = false;
|
||||
ui->tableWidget->setHorizontalHeaderLabels(QStringList() << "序号" << "传输方向" << "时间" << "状态" << "名称" << "帧ID" << "格式" << "类型" << "DLC" << "数据" << "解码" << "解析");
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -768,28 +774,33 @@ void MainWindow::PushButton_Clicked_Parse_clicked()
|
|||
bufData.len = ba.size();
|
||||
memcpy(&bufData.buf, ba.data(), bufData.len);
|
||||
|
||||
disp.chop(1); // 删除最后一个字符
|
||||
disp += "【";
|
||||
disp.chop(1); // 删除回车
|
||||
|
||||
for (uint8_t i = 0; i < bufData.len; i++)
|
||||
{
|
||||
bufData.buf[i] ^= key[i];
|
||||
disp += QString("%1").arg(bufData.buf[i], 2, 16, QLatin1Char('0')) + " ";
|
||||
}
|
||||
disp += "】 -";
|
||||
qDebug() << disp;
|
||||
disp += "\t";
|
||||
|
||||
// 进行数据解析
|
||||
disp += AppendParse(bufData);
|
||||
disp += AppendParse(bufData); // 追加数据解析
|
||||
|
||||
disp += "\r\n";
|
||||
int rowCnt = ui->tableWidget->rowCount();
|
||||
ui->tableWidget->insertRow(rowCnt); // 增加一行
|
||||
QStringList sl = disp.split("\t");
|
||||
for(uint16_t i = 0; i < sl.size(); i++)
|
||||
{
|
||||
QTableWidgetItem* item = new QTableWidgetItem(" " + sl.at(i) + " ");
|
||||
ui->tableWidget->setItem(rowCnt, i, item);
|
||||
}
|
||||
}
|
||||
|
||||
ui->textEdit->append(disp);
|
||||
ui->tableWidget->resizeColumnsToContents();
|
||||
|
||||
byteArr = pQfile_ori->readLine(); // 继续下一行的读取
|
||||
context = codec->toUnicode(byteArr);
|
||||
disp = context;
|
||||
}
|
||||
QTextCursor cursor = ui->textEdit->textCursor();
|
||||
cursor.movePosition(QTextCursor::Start);
|
||||
ui->textEdit->setTextCursor(cursor);
|
||||
}
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>1106</width>
|
||||
<height>718</height>
|
||||
<width>924</width>
|
||||
<height>431</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
|
@ -35,7 +35,7 @@
|
|||
<widget class="QWidget" name="widget" native="true">
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="oriPath_hlayout" stretch="1,6,1">
|
||||
<layout class="QHBoxLayout" name="oriPath_hlayout" stretch="1,10,1">
|
||||
<item>
|
||||
<widget class="QLabel" name="label_oriPath">
|
||||
<property name="minimumSize">
|
||||
|
@ -87,7 +87,7 @@
|
|||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="keyPath_hlayout" stretch="1,6,1">
|
||||
<layout class="QHBoxLayout" name="keyPath_hlayout" stretch="1,10,1">
|
||||
<item>
|
||||
<widget class="QLabel" name="label_keyPath">
|
||||
<property name="minimumSize">
|
||||
|
@ -186,17 +186,7 @@ background-color: rgb(91, 255, 88);</string>
|
|||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QTextEdit" name="textEdit">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>1100</width>
|
||||
<height>400</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="lineWrapMode">
|
||||
<enum>QTextEdit::NoWrap</enum>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QTableWidget" name="tableWidget"/>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
|
@ -224,7 +214,7 @@ background-color: rgb(91, 255, 88);</string>
|
|||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>1106</width>
|
||||
<width>924</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
|
|
Loading…
Reference in New Issue
Block a user