修复回放功能再次加载新文件无法切换bug
This commit is contained in:
@@ -53,23 +53,16 @@ Tools_Index2::~Tools_Index2()
|
||||
|
||||
void Tools_Index2::on_pushButton_file_clicked()
|
||||
{
|
||||
QFileDialog *dlg = new QFileDialog(this);
|
||||
QFileDialog *dlg = new QFileDialog;
|
||||
|
||||
QString fileName = dlg->getOpenFileName(this, tr("Open File"),
|
||||
"./Tlog/",
|
||||
tr("LogFile (*.Tlog *.log)"));
|
||||
delete dlg;
|
||||
|
||||
if(!fileName.isEmpty())
|
||||
{
|
||||
ui->pushButton_file->setText(fileName);
|
||||
|
||||
PlayState = false;
|
||||
|
||||
emit setPlay(PlayState);//暂停播放,跟底层关联起来
|
||||
emit setFileName(fileName);
|
||||
|
||||
ui->horizontalSlider->show();
|
||||
|
||||
setIniPlayStatus(fileName);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -117,14 +110,7 @@ void Tools_Index2::dropEvent(QDropEvent *event)
|
||||
|
||||
if(info.suffix() == QString("tlog") )
|
||||
{
|
||||
ui->pushButton_file->setText(file_name);
|
||||
|
||||
PlayState = false;
|
||||
|
||||
emit setPlay(PlayState);//暂停播放,跟底层关联起来
|
||||
emit setFileName(file_name);
|
||||
|
||||
ui->horizontalSlider->show();
|
||||
setIniPlayStatus(file_name);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -237,3 +223,16 @@ void Tools_Index2::on_pushButton_CSV_clicked()
|
||||
qDebug() << "emit csv";
|
||||
emit CreateCSV();
|
||||
}
|
||||
|
||||
void Tools_Index2::setIniPlayStatus(QString const &file_name)
|
||||
{
|
||||
PlayState = false;
|
||||
emit setFileName(file_name);
|
||||
emit setPlay(PlayState);//暂停播放,跟底层关联起来
|
||||
|
||||
ui->pushButton_file->setText(file_name);
|
||||
ui->horizontalSlider->setValue(0);
|
||||
ui->pushButton_Play->setText("play");
|
||||
ui->label_percent->setText("0");
|
||||
ui->horizontalSlider->show();
|
||||
}
|
||||
|
||||
@@ -38,7 +38,7 @@ protected:
|
||||
*/
|
||||
void dragEnterEvent(QDragEnterEvent *event) override;
|
||||
/**
|
||||
* @brief 重写放下事件,
|
||||
* @brief 重写放下事件,接收.tlog后缀文件
|
||||
* @param event
|
||||
*/
|
||||
void dropEvent(QDropEvent *event) override;
|
||||
@@ -95,6 +95,12 @@ signals:
|
||||
void CreateCSV(void);
|
||||
|
||||
private:
|
||||
/**
|
||||
* @brief 设置初始的播放状态
|
||||
* @param file_name 需要加载的文件名
|
||||
*/
|
||||
void setIniPlayStatus(QString const &file_name);
|
||||
|
||||
Ui::Tools_Index2 *ui;
|
||||
|
||||
bool isMove = false;
|
||||
|
||||
+18
-15
@@ -1,4 +1,4 @@
|
||||
#include "replay.h"
|
||||
#include "replay.h"
|
||||
|
||||
|
||||
Replay::Replay(QObject *parent) : ThreadTemplet(parent)
|
||||
@@ -152,33 +152,36 @@ QByteArray Replay::readAll(void)
|
||||
|
||||
void Replay::setLogfile(const QString name, float percent)
|
||||
{
|
||||
|
||||
if(name != logFile)
|
||||
{
|
||||
logFile = name;
|
||||
//重置各种参数
|
||||
percentage = 0;
|
||||
setPercentage(0);
|
||||
ispause = false;
|
||||
isplaying = false;
|
||||
|
||||
//emit currentPercentage(percentage);
|
||||
//emit readReady();
|
||||
|
||||
if(!file)
|
||||
if(file)
|
||||
{
|
||||
file->deleteLater();
|
||||
file = nullptr;
|
||||
}
|
||||
|
||||
file = new QFile();
|
||||
file->setFileName(logFile);
|
||||
if(!file->open(QIODevice::ReadOnly))
|
||||
file = new QFile();
|
||||
file->setFileName(logFile);
|
||||
if(!file->open(QIODevice::ReadOnly))
|
||||
{
|
||||
if(!logFile.isEmpty())
|
||||
{
|
||||
if(!logFile.isEmpty())
|
||||
{
|
||||
QMessageBox::warning(nullptr,
|
||||
tr("Error"),
|
||||
tr("%1").arg(file->errorString()));
|
||||
}
|
||||
delete file;
|
||||
file = nullptr;
|
||||
}
|
||||
QMessageBox::warning(nullptr,
|
||||
tr("Error"),
|
||||
tr("%1").arg(file->errorString()));
|
||||
}
|
||||
delete file;
|
||||
file = nullptr;
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user