diff --git a/src/MeasureAnalysisTreeView.cpp b/src/MeasureAnalysisTreeView.cpp index fc4eb7c..90d04d5 100644 --- a/src/MeasureAnalysisTreeView.cpp +++ b/src/MeasureAnalysisTreeView.cpp @@ -68,7 +68,7 @@ void MeasureAnalysisTreeView::onNodeDoubleClicked(const QModelIndex& index) MeasureAnalysisView* view = MeasureAnalysisView::NewAnalyzeView(analysis_type); if ( view ) { view->SetProjectName(project_name); - const auto& view_name = QStringLiteral(u"%1 [%2]").arg(item_text).arg(project_name); + const auto& view_name = QStringLiteral(u"%1[%2]").arg(item_text).arg(project_name); view->SetViewName(view_name); view->SetViewDescription(view_name); view->InitViewWorkspace(project_name); diff --git a/src/NewMeasureAnalysisDlg.cpp b/src/NewMeasureAnalysisDlg.cpp index 0af1e74..b41de85 100644 --- a/src/NewMeasureAnalysisDlg.cpp +++ b/src/NewMeasureAnalysisDlg.cpp @@ -5,6 +5,7 @@ #include #include #include +#include #include "DataProcessWorkPool.h" NewMeasureAnalysisDlg::NewMeasureAnalysisDlg(QWidget *parent) @@ -13,6 +14,15 @@ NewMeasureAnalysisDlg::NewMeasureAnalysisDlg(QWidget *parent) { ui->setupUi(this); initialization(); + + this->_task_wait_timer = new QTimer(this); + this->_task_wait_timer->setInterval(200); + connect(this->_task_wait_timer, &QTimer::timeout, [this](){ + int progress = ui->progressBar->value(); + if ( progress >= ui->progressBar->maximum() ) + progress = 0; + ui->progressBar->setValue(progress + 10); + }); } NewMeasureAnalysisDlg::~NewMeasureAnalysisDlg() @@ -151,15 +161,18 @@ void NewMeasureAnalysisDlg::onNewProjectFromFileFinished(bool ok, const QString& } } else { project_dir.removeRecursively(); - - ui->stackedWidget->setEnabled(false); - ui->btn_previous_step->setEnabled(false); - ui->btn_next_step->setEnabled(false); - ui->btn_ok->setEnabled(false); - const QString& data_file_path = ui->lineEdit_filename->property("data_file_path").toString(); QMessageBox::warning(this, QStringLiteral(u"警告"), QStringLiteral(u"粒子数据%1异常,创建测量分析项目失败!").arg(data_file_path)); } + this->_task_wait_timer->stop(); + ui->progressBar->setVisible(false); + + ui->stackedWidget->setEnabled(true); + ui->label_note->setEnabled(true); + ui->plainTextEdit_description->setEnabled(true); + ui->btn_previous_step->setEnabled(true); + ui->btn_next_step->setEnabled(true); + ui->btn_ok->setEnabled(true); } void NewMeasureAnalysisDlg::on_btn_ok_clicked() @@ -189,14 +202,19 @@ void NewMeasureAnalysisDlg::on_btn_ok_clicked() separate_task->SetSortedResultDir(project_dir_path); separate_task->SetFinishedNotifier(this, "onNewProjectFromFileFinished", project_name); separate_task->StartTask(); + + ui->stackedWidget->setEnabled(false); + ui->label_note->setEnabled(false); + ui->plainTextEdit_description->setEnabled(false); + ui->btn_previous_step->setEnabled(false); + ui->btn_next_step->setEnabled(false); + ui->btn_ok->setEnabled(false); + ui->progressBar->setVisible(true); + this->_task_wait_timer->start(); } else { this->newProject(); } - ui->stackedWidget->setEnabled(false); - ui->btn_previous_step->setEnabled(false); - ui->btn_next_step->setEnabled(false); - ui->btn_ok->setEnabled(false); // const QString& result_data_dir = QDir(project_model->GetProjectDir()).filePath("EveryChannelParticleData"); // auto separate_task = new DataProcessWorkPool::EveryChannelParticleDataSeparateTask; diff --git a/src/NewMeasureAnalysisDlg.h b/src/NewMeasureAnalysisDlg.h index 2dc2d22..bfd099b 100644 --- a/src/NewMeasureAnalysisDlg.h +++ b/src/NewMeasureAnalysisDlg.h @@ -3,6 +3,8 @@ #include +class QTimer; + namespace Ui { class NewMeasureAnalysisDlg; } @@ -25,6 +27,7 @@ private slots: private: Ui::NewMeasureAnalysisDlg *ui; + QTimer* _task_wait_timer = nullptr; }; #endif // NEWMEASUREANALYSISDLG_H diff --git a/src/NewMeasureAnalysisDlg.ui b/src/NewMeasureAnalysisDlg.ui index 35d724a..41b378a 100644 --- a/src/NewMeasureAnalysisDlg.ui +++ b/src/NewMeasureAnalysisDlg.ui @@ -36,7 +36,7 @@ - + 0 @@ -68,7 +68,7 @@ - + 0 @@ -501,7 +501,7 @@ - + 0 @@ -551,14 +551,23 @@ - 24 + 0 + + + Qt::AlignCenter - false + true + + + Qt::Horizontal false + + 数据加载中······ +