在progressBar中跟踪脚本执行进度Qt

时间:2021-07-23 09:32:07

标签: c++ qt

在我的程序中,我运行 Python 脚本的执行:

void analysis::on_pB_start_clicked()
{
    QString file = ui->lE_path->text();
    if (file.size() == 0)
    {
        QMessageBox::warning(this, "warning", "");
        return;
    }
    QProcess analyse;
    QString cArg;
    cArg="/tmp/pixmap.py -f " + file;
    analyse.start("python3 "+cArg);
    analyse.waitForFinished();
    analyse.close();
}

此进程在后台运行,我无法跟踪此进程的执行 time

请告诉我如何通过程序 progressBar 上的 Qt 中的 form 跟踪此脚本的执行情况?

我认为在运行的Python script中,我需要在code的某个阶段得出结论,例如Print ("1")Print ("2")等等,并在您的程序中跟踪这些结论并将它们传递给 progressBar,但这些只是我的假设...我可能是错的...请告诉我在这种情况下如何正确有效地采取行动。

And yet,当执行上述代码时,程序窗口freezes (waiting)为这段script的执行时间。

Python script 中,我使用了 matplotlib.pyplot 库,并在那里多次调用它,创建了几个 graphs 并保存到一个目录中,接下来我使用这些我的 Qt 程序中的图表。

0 个答案:

没有答案
相关问题