优化事件处理逻辑,确保新建事件时正确删除现有事件的高亮矩形

This commit is contained in:
marques
2025-09-26 14:51:16 +08:00
parent 746f477703
commit e9ca2ec1e9

View File

@ -973,6 +973,10 @@ class MainWindow_SA_label(QMainWindow):
signal_min = min(signal_min, 90)
elif channel == "Stage":
continue
# elif channel == "0.7lowpass_resp":
# # 上限上移0.1下限下移0.1
# signal_max = signal_max + 0.1
# signal_min = signal_min - 0.1
else:
# 上限上移2%下限下移2%
delta = abs(signal_max - signal_min) * 0.02
@ -1427,8 +1431,15 @@ class MainWindow_SA_label(QMainWindow):
event_info = self.data.df_revised[self.data.df_revised["Index"] == index].iloc[0].copy()
if self.selected_event_info is not None:
if self.selected_event_info["Index"] != event_info["Index"]:
if self.selected_event_rect is not None:
self.selected_event_rect.set_alpha(0.2)
if self.selected_event_info["Index"] == -1:
# 新建事件,删除
if self.selected_event_rect is not None:
self.selected_event_rect.remove()
self.selected_event_rect = None
else:
# 取消之前选中事件的高亮
if self.selected_event_rect is not None:
self.selected_event_rect.set_alpha(0.2)
self.selected_event_info = event_info
self.selected_event_rect = self.event_ploy_collection[event_info["Index"]]