From b5cbf0779bd743d96b475e21d97844f51722fb39 Mon Sep 17 00:00:00 2001 From: huangzhenpc Date: Thu, 13 Feb 2025 16:27:25 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BC=98=E5=8C=96=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E4=B8=8B=E8=BD=BD=E7=95=8C=E9=9D=A2=20v3.4.2=20#patch=20-=201.?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=B8=8B=E8=BD=BD=E8=BF=9B=E5=BA=A6=E5=AF=B9?= =?UTF-8?q?=E8=AF=9D=E6=A1=86=E5=B8=83=E5=B1=80=E5=92=8C=E6=A0=B7=E5=BC=8F?= =?UTF-8?q?=202.=E5=A2=9E=E5=A4=A7=E4=BF=A1=E6=81=AF=E6=98=BE=E7=A4=BA?= =?UTF-8?q?=E5=8C=BA=E5=9F=9F=EF=BC=8C=E6=8F=90=E5=8D=87=E5=8F=AF=E8=AF=BB?= =?UTF-8?q?=E6=80=A7=203.=E7=BE=8E=E5=8C=96=E8=BF=9B=E5=BA=A6=E6=9D=A1?= =?UTF-8?q?=E5=92=8C=E7=8A=B6=E6=80=81=E6=98=BE=E7=A4=BA=204.=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E5=AE=9E=E6=97=B6=E4=B8=8B=E8=BD=BD=E9=80=9F=E5=BA=A6?= =?UTF-8?q?=E5=92=8C=E5=89=A9=E4=BD=99=E6=97=B6=E9=97=B4=E6=98=BE=E7=A4=BA?= =?UTF-8?q?=205.=E6=9B=B4=E6=96=B0=E7=89=88=E6=9C=AC=E6=88=AA=E5=9B=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- banbenjietu.png | Bin 48451 -> 56841 bytes gui/main_window.py | 374 ++++++++++++++++++++++++++++++++++++++++++--- 2 files changed, 354 insertions(+), 20 deletions(-) diff --git a/banbenjietu.png b/banbenjietu.png index c090d6e9512dc7cab2be6aeb5e1663b69a0e2d61..9ae94f28e4e32acd3d42fad2138122f8a23988b2 100644 GIT binary patch literal 56841 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%0Aw}rh3(DP+QG@G)ZsTEgmY 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 0: + percentage = (downloaded_size / total_size) * 100 + self.progress_bar.setValue(int(percentage)) + + # 计算下载速度 + current_time = time.time() + time_diff = current_time - self.last_update_time + if time_diff >= 0.5: # 每0.5秒更新一次 + speed = (downloaded_size - self.last_downloaded) / time_diff + self.last_downloaded = downloaded_size + self.last_update_time = current_time + + # 更新下载信息 + speed_text = self._format_speed(speed) + self.speed_label.setText(f"下载速度: {speed_text}") + + # 更新文件大小信息 + total_mb = total_size / (1024 * 1024) + downloaded_mb = downloaded_size / (1024 * 1024) + self.size_label.setText(f"文件大小: {downloaded_mb:.1f} MB / {total_mb:.1f} MB") + + # 更新预计剩余时间 + if speed > 0: + remaining_bytes = total_size - downloaded_size + remaining_time = remaining_bytes / speed + time_text = self._format_time(remaining_time) + self.time_label.setText(f"预计剩余时间: {time_text}") + + # 更新状态文本 + self.status_label.setText(f"正在下载更新... {percentage:.1f}%") + + def _format_speed(self, speed_bytes): + """格式化速度显示""" + if speed_bytes > 1024 * 1024: + return f"{speed_bytes / (1024 * 1024):.1f} MB/s" + elif speed_bytes > 1024: + return f"{speed_bytes / 1024:.1f} KB/s" + else: + return f"{speed_bytes:.1f} B/s" + + def _format_time(self, seconds): + """格式化时间显示""" + if seconds < 60: + return f"{seconds:.0f}秒" + elif seconds < 3600: + minutes = seconds / 60 + return f"{minutes:.0f}分钟" + else: + hours = seconds / 3600 + return f"{hours:.1f}小时" + class MainWindow(QMainWindow): def __init__(self): super().__init__() @@ -787,7 +933,6 @@ class MainWindow(QMainWindow): border-radius: 4px; font-size: 13px; min-width: 100px; - margin: 10px; } QPushButton:hover { background-color: #bb2d3b; @@ -1623,33 +1768,222 @@ class MainWindow(QMainWindow): return try: - # 创建下载目录 - download_dir = Path.home() / "Downloads" / "CursorHelper" + # 创建下载目录(优先使用D盘,如果不存在则使用当前程序目录) + if Path("D:/").exists(): + download_dir = Path("D:/CursorHelper/updates") + else: + download_dir = Path(__file__).parent.parent / "updates" download_dir.mkdir(parents=True, exist_ok=True) # 下载文件名 file_name = download_url.split('/')[-1] save_path = download_dir / file_name - self.show_loading_dialog("正在下载更新...") + # 创建并显示进度对话框 + progress_dialog = DownloadProgressDialog(self) + progress_dialog.show() # 开始下载 - success, message = self.version_manager.download_update(download_url, str(save_path)) - self.hide_loading_dialog() - - if success: - self.show_custom_message( - "下载完成", - "更新包下载成功", - f"更新包已下载到:\n{save_path}\n\n请关闭程序后运行更新包完成更新。", - QStyle.SP_DialogApplyButton, - "#198754" + try: + # 处理下载地址中的中文字符 + url_parts = download_url.split('/') + url_parts[-1] = quote(url_parts[-1]) + encoded_url = '/'.join(url_parts) + + # 设置请求头 + headers = { + 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36', + 'Accept': '*/*', + 'Accept-Encoding': 'gzip, deflate, br', + 'Connection': 'keep-alive' + } + + response = requests.get( + encoded_url, + stream=True, + headers=headers, + timeout=30 ) - # 退出程序 - self.quit_application() - else: - self.show_custom_error("下载失败", message) + response.raise_for_status() + + # 获取文件大小 + total_size = int(response.headers.get('content-length', 0)) + if total_size == 0: + progress_dialog.hide() + self.show_custom_error("下载失败", "无法获取文件大小,下载地址可能无效") + return False, "无法获取文件大小" + + # 更新进度条范围 + progress_dialog.progress_bar.setRange(0, 100) + + # 下载文件 + downloaded_size = 0 + block_size = 8192 + + with open(save_path, 'wb') as f: + for chunk in response.iter_content(chunk_size=block_size): + if chunk: + f.write(chunk) + downloaded_size += len(chunk) + # 更新进度 + progress_dialog.update_progress(downloaded_size, total_size) + QApplication.processEvents() # 保持界面响应 + + # 验证文件大小 + actual_size = os.path.getsize(save_path) + if actual_size != total_size: + progress_dialog.hide() + os.remove(save_path) + self.show_custom_error("下载失败", "文件下载不完整,请重试") + return False, "文件下载不完整" + + progress_dialog.hide() + + # 显示下载完成对话框 + self._show_download_complete_dialog(save_path) + return True, "下载成功" + + except requests.exceptions.Timeout: + progress_dialog.hide() + self.show_custom_error("下载失败", "下载超时,请检查网络连接后重试") + return False, "下载超时" + except requests.exceptions.RequestException as e: + progress_dialog.hide() + self.show_custom_error("下载失败", f"下载出错: {str(e)}") + return False, str(e) + except Exception as e: + progress_dialog.hide() + self.show_custom_error("下载失败", f"下载过程中发生错误: {str(e)}") + return False, str(e) except Exception as e: - self.hide_loading_dialog() - self.show_custom_error("下载失败", f"下载更新时发生错误: {str(e)}") \ No newline at end of file + self.show_custom_error("下载失败", f"下载更新时发生错误: {str(e)}") + return False, str(e) + + def _show_download_complete_dialog(self, save_path): + """显示下载完成对话框""" + # 创建自定义消息框 + msg = QDialog(self) + msg.setWindowTitle("下载完成") + msg.setFixedWidth(500) + msg.setWindowFlags(msg.windowFlags() & ~Qt.WindowContextHelpButtonHint) + + layout = QVBoxLayout() + + # 添加图标 + icon_label = QLabel() + icon_label.setPixmap(self.style().standardIcon(QStyle.SP_DialogApplyButton).pixmap(32, 32)) + icon_label.setAlignment(Qt.AlignCenter) + layout.addWidget(icon_label) + + # 添加标题 + title_label = QLabel("更新包下载成功") + title_label.setAlignment(Qt.AlignCenter) + title_label.setStyleSheet(""" + font-size: 16px; + font-weight: bold; + color: #198754; + padding: 10px; + """) + layout.addWidget(title_label) + + # 添加文件信息框 + info_frame = QFrame() + info_frame.setStyleSheet(""" + QFrame { + background-color: #f8f9fa; + border-radius: 8px; + border: 1px solid #dee2e6; + margin: 10px; + padding: 15px; + } + QLabel { + color: #333333; + font-size: 14px; + padding: 5px; + } + """) + info_layout = QVBoxLayout(info_frame) + + # 文件路径 + path_label = QLabel(f"文件保存在:\n{save_path}") + path_label.setWordWrap(True) + path_label.setTextInteractionFlags(Qt.TextSelectableByMouse) + info_layout.addWidget(path_label) + + # 文件大小 + size_mb = save_path.stat().st_size / (1024 * 1024) + size_label = QLabel(f"文件大小:{size_mb:.2f} MB") + info_layout.addWidget(size_label) + + layout.addWidget(info_frame) + + # 提示信息 + tip_label = QLabel("请关闭程序后运行更新包完成更新。") + tip_label.setStyleSheet("color: #dc3545; font-weight: bold; padding: 10px;") + layout.addWidget(tip_label) + + # 按钮区域 + btn_layout = QHBoxLayout() + + # 打开文件按钮 + open_file_btn = QPushButton("打开文件") + open_file_btn.setStyleSheet(""" + QPushButton { + background-color: #0d6efd; + color: white; + border: none; + padding: 8px 20px; + border-radius: 4px; + font-size: 13px; + min-width: 100px; + } + QPushButton:hover { + background-color: #0b5ed7; + } + """) + open_file_btn.clicked.connect(lambda: os.startfile(str(save_path))) + btn_layout.addWidget(open_file_btn) + + # 打开文件夹按钮 + open_dir_btn = QPushButton("打开文件夹") + open_dir_btn.setStyleSheet(""" + QPushButton { + background-color: #198754; + color: white; + border: none; + padding: 8px 20px; + border-radius: 4px; + font-size: 13px; + min-width: 100px; + } + QPushButton:hover { + background-color: #157347; + } + """) + open_dir_btn.clicked.connect(lambda: os.startfile(str(save_path.parent))) + btn_layout.addWidget(open_dir_btn) + + # 退出按钮 + quit_btn = QPushButton("立即退出") + quit_btn.setStyleSheet(""" + QPushButton { + background-color: #dc3545; + color: white; + border: none; + padding: 8px 20px; + border-radius: 4px; + font-size: 13px; + min-width: 100px; + font-weight: bold; + } + QPushButton:hover { + background-color: #bb2d3b; + } + """) + quit_btn.clicked.connect(lambda: (msg.accept(), self.quit_application())) + btn_layout.addWidget(quit_btn) + + layout.addLayout(btn_layout) + msg.setLayout(layout) + msg.exec_() \ No newline at end of file