修复未发布版本打包器和wine下载工具的异线程修改UI的问题

This commit is contained in:
2022-08-21 12:53:04 +08:00
parent aac498bf7d
commit a62a937700
6 changed files with 49 additions and 18 deletions

View File

@@ -36,7 +36,19 @@ MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::MessageBoxInfo(QString info){
QMessageBox::information(this, "提示", info);
}
void MainWindow::MessageBoxError(QString info){
QMessageBox::critical(this, "错误", info);
}
void MainWindow::ChangeDialog(QProgressDialog *dialog, int value, int downloadBytes, int totalBytes){
dialog->setValue(value);
dialog->setLabelText(QString::number(downloadBytes) + "MB/" + QString::number(totalBytes) + "MB");
}
void MainWindow::DownloadFinish(){
ui->centralWidget->setEnabled(true);
}
void MainWindow::on_addButton_clicked()
{
// 获取下载链接
@@ -76,14 +88,13 @@ void MainWindow::on_addButton_clicked()
!ui->unzip->isChecked(),
&localJsonList
);
connect(thread, &DownloadThread::MessageBoxInfo, this, &MainWindow::MessageBoxInfo);
connect(thread, &DownloadThread::MessageBoxError, this, &MainWindow::MessageBoxError);
connect(thread, &DownloadThread::ChangeDialog, this, &MainWindow::ChangeDialog);
connect(thread, &DownloadThread::Finish, this, &MainWindow::DownloadFinish);
ui->centralWidget->setDisabled(true);
thread->start();
}
void DownloadThread::MessageBoxInfo(QString info){
QMessageBox::information(NULL, "提示", info);
}
void DownloadThread::MessageBoxError(QString info){
QMessageBox::critical(NULL, "错误", info);
}
void MainWindow::ReadInternetInformation(){
// 我们采用最简单的 curl 来获取信息
QProcess internet;