#include "Reportform.h" #include "ui_Reportform.h" #include #include ReportForm::ReportForm(QWidget *parent) : BaseWgt(parent), ui(new Ui::ReportForm) { ui->setupUi(m_pMainWgt); resize(700,650); setWindowTitle("诊断报告"); m_strReportName = ""; m_filePath = ""; connect(ui->ChoosePath_Btn, SIGNAL(clicked()), this, SLOT(ChoosePath())); connect(ui->PDF_radioButton, SIGNAL(toggled(bool)),this,SLOT(ChoosePDF(bool))); connect(ui->Word_radioButton, SIGNAL(toggled(bool)),this,SLOT(ChooseWord(bool))); connect(ui->Report_Btn, SIGNAL(clicked()),this,SLOT(Report())); ui->Result_Edit->setPlaceholderText("请输入..."); } ReportForm::~ReportForm() { delete ui; } void ReportForm::InitReport(QString path,QStringList& strImagePathList,QString ReportName,REPORT_INFO& reportInfo) { _reportInfo = reportInfo; ui->ReportPath_Edit->setText(path); m_strReportName = ReportName; m_filePath = path; strImagePath = strImagePathList; } void ReportForm::ChoosePath() { QString dirpath = QFileDialog::getExistingDirectory(this, QStringLiteral("选择目录"), "./", QFileDialog::ShowDirsOnly); if(dirpath.isEmpty()) dirpath = QDir::currentPath(); ui->ReportPath_Edit->setText(dirpath + "/" + m_strReportName); m_filePath = dirpath + "\\" + m_strReportName; } void ReportForm::ChoosePDF(bool flag) { if(flag){ ui->Result_Edit->setVisible(true); ui->label_2->setText("诊断结果及建议:"); } } void ReportForm::ChooseWord(bool flag) { if(flag){ ui->Result_Edit->setVisible(false); ui->label_2->setText("提示:请在Word中输入诊断建议!"); } } void ReportForm::Report() { QString strResult =ui->Result_Edit->document()->toPlainText(); qDebug() << "Report:" << strResult; QStringList strResultList = strResult.split(QRegExp("[\n]"),QString::SkipEmptyParts); if(ui->PDF_radioButton->isChecked()) { emit ReportPDF(strResultList,m_filePath); }else{ cp.GetReport(_reportInfo,strImagePath); } }