1,主界面
2,代码部分
- #include "mainwindow.h"
- #include "ui_mainwindow.h"
- #include
- #include
- #include
-
-
- MainWindow::MainWindow(QWidget *parent) :
- QMainWindow(parent),
- ui(new Ui::MainWindow)
- {
- ui->setupUi(this);
- ui->editURL->setClearButtonEnabled(true);
- }
-
- MainWindow::~MainWindow()
- {
- delete ui;
- }
-
- void MainWindow::on_finished()
- {// 络响应结束
- QFileInfo fileInfo;
- fileInfo.setFile(downloadedFile->fileName());
-
- downloadedFile->close();
- delete downloadedFile;
- downloadedFile = Q_NULLPTR;
-
- reply->deleteLater(); //
- reply = Q_NULLPTR;
-
- if (ui->checkOpen->isChecked())//打开下载的文件
- QDesktopServices::openUrl(QUrl::fromLocalFile(fileInfo.absoluteFilePath()));
-
- ui->btnDownload->setEnabled(true);
- }
-
- void MainWindow::on_readyRead()
- {//读取下载的数据
- downloadedFile->write(reply->readAll());
- }
-
- void MainWindow::on_downloadProgress(qint64 bytesRead, qint64 totalBytes)
- {//下载进程
- ui->progressBar->setMaximum(totalBytes);
- ui->progressBar->setValue(bytesRead);
- }
-
- void MainWindow::on_btnDefaultPath_clicked()
- {//缺省路径 按钮
- QString curPath=QDir::currentPath();
- QDir dir(curPath);
-
- QString sub="temp";
- dir.mkdir(sub);
-
- ui->editPath->setText(curPath+"/"+sub+"/");
- }
-
- void MainWindow::on_btnDownload_clicked()
- {//开始下载 按钮
- QString urlSpec = ui->editURL->text().trimmed();
- if (urlSpec.isEmpty())
- {
- QMessageBox::information(this, u8"错误",
- u8"请指定需要下载的URL");
- return;
- }
-
- QUrl newUrl = QUrl::fromUserInput(urlSpec);//URL地址
- if (!newUrl.isValid())
- {
- QMessageBox::information(this, u8"错误",
- QString(u8"无效URL: %1 n 错误信息: %2").arg(urlSpec, newUrl.errorString()));
- return;
- }
-
- QString tempDir =ui->editPath->text().trimmed();//临时目录
- if (tempDir.isEmpty())
- {
- QMessageBox::information(this, tr("错误"), u8"请指定保存下载文件的目录");
- return;
- }
-
- QString fullFileName =tempDir+newUrl.fileName(); //文件名
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!