diff --git a/ImageOperatorBase.h b/ImageOperatorBase.h index 8eca03e..bc9a859 100644 --- a/ImageOperatorBase.h +++ b/ImageOperatorBase.h @@ -74,9 +74,8 @@ enum GDALREADARRCOPYMETHOD { -class ShowProessAbstract :public QObject{ -public: - Q_OBJECT +class ShowProessAbstract{ + public: virtual void showProcess(double precent,QString tip); virtual void showToolInfo( QString tip) ; diff --git a/QToolProcessBarDialog.cpp b/QToolProcessBarDialog.cpp new file mode 100644 index 0000000..c75f6c2 --- /dev/null +++ b/QToolProcessBarDialog.cpp @@ -0,0 +1,24 @@ +#include "QToolProcessBarDialog.h" + +QToolProcessBarDialog::QToolProcessBarDialog(QWidget *parent) + : QDialog(parent) +{ + ui.setupUi(this); + ui.progressBar->setRange(0, 100); + +} + +QToolProcessBarDialog::~QToolProcessBarDialog() +{} + +void QToolProcessBarDialog::showProcess(double precent, QString tip) +{ + ui.progressBar->setValue(std::ceil(precent * 100)); + ui.labelTip->setText(tip); + this->update(); +} + +void QToolProcessBarDialog::showToolInfo(QString tip) +{ + ui.textEditTip->append("\n"+tip); +} diff --git a/QToolProcessBarDialog.h b/QToolProcessBarDialog.h new file mode 100644 index 0000000..11e33a1 --- /dev/null +++ b/QToolProcessBarDialog.h @@ -0,0 +1,19 @@ +#pragma once + +#include +#include "ui_QToolProcessBarDialog.h" +#include "ImageOperatorBase.h" +class QToolProcessBarDialog : public QDialog, public ShowProessAbstract +{ + Q_OBJECT +public: + QToolProcessBarDialog(QWidget *parent = nullptr); + ~QToolProcessBarDialog(); + +private: + Ui::QToolProcessBarDialogClass ui; + +public: + virtual void showProcess(double precent, QString tip) override; + virtual void showToolInfo(QString tip) override; +}; diff --git a/QToolProcessBarDialog.ui b/QToolProcessBarDialog.ui new file mode 100644 index 0000000..400efab --- /dev/null +++ b/QToolProcessBarDialog.ui @@ -0,0 +1,73 @@ + + + QToolProcessBarDialogClass + + + + 0 + 0 + 600 + 400 + + + + QToolProcessBarDialog + + + + + + + + + + 120 + 26 + + + + + 120 + 26 + + + + 退出 + + + + + + + 提示 + + + + + + + 24 + + + + + + + + + + + + + + + + + + + + + + + +