diff --git a/src/ui.rs b/src/ui.rs index 1910a08..c0acba9 100644 --- a/src/ui.rs +++ b/src/ui.rs @@ -48,7 +48,8 @@ impl Default for AppDataCleaner { move_module: Default::default(), folder_descriptions: None, yaml_error_logged: false, // 初始时假定未记录过错误 - status: None, // 初始化为 None + //status: None, // 初始化为 None + status: Some("未扫描".to_string()), // 初始化为 "未扫描" } } } @@ -109,11 +110,12 @@ impl eframe::App for AppDataCleaner { ui.checkbox(&mut self.is_logging_enabled, "启用日志"); ui.menu_button("切换文件夹", |ui| { - for folder in ["Roaming", "Local", "LocalLow"] { + for folder in ["Roaming","Local","LocalLow"] { if ui.button(folder).clicked() { self.selected_appdata_folder = folder.to_string(); self.folder_data.clear(); self.is_scanning = false; + self.status = Some("未扫描".to_string()); // 更新状态为 "未扫描" ui.close_menu(); } } @@ -125,6 +127,7 @@ impl eframe::App for AppDataCleaner { if ui.button("立即扫描").clicked() && !self.is_scanning { self.is_scanning = true; self.folder_data.clear(); + self.status = Some("扫描中...".to_string()); // 更新状态为 "扫描中..." let tx = self.tx.clone().unwrap(); let folder_type = self.selected_appdata_folder.clone(); @@ -137,16 +140,16 @@ impl eframe::App for AppDataCleaner { // 检查是否接收到扫描完成标志 if folder == "__SCAN_COMPLETE__" { self.is_scanning = false; + self.status = Some("扫描完成".to_string()); // 更新状态为 "扫描完成" } else { self.folder_data.push((folder, size)); } } } - if self.is_scanning { - ui.label("扫描中..."); - } else { - ui.label("扫描完成"); + // 显示状态 + if let Some(status) = &self.status { + ui.label(status); } ScrollArea::vertical().show(ui, |ui| {