diff --git a/MainForm.pas b/MainForm.pas index e213000..e7c1770 100644 --- a/MainForm.pas +++ b/MainForm.pas @@ -1034,6 +1034,11 @@ begin FController.FDriveLevel := CalcDriveByte; // ApplyVfoA обновит сеть, FreqDisp, shift, перерисует ApplyVfoA(Round(B.VfoA)); + // Смена диапазона — дискретное событие (не wheel/drag), поэтому + // перерисовываем Ruler синхронно. ApplyVfoA откладывает рендер на таймер + // (FSpectrumDirty), что для оффлайна/без RUN не перерисовывает линейку. + FSpecView.InvalidateRulerCache; + if PbRuler <> nil then PbRuler.Invalidate; end; procedure TMainForm.SaveAllAndExit; @@ -1447,11 +1452,13 @@ begin rfCTun: begin StyleButton(BtnCTun, FController.FCTun); + FSpecView.InvalidateRulerCache; SyncSpecViewFreq; FSpecView.DrawSpectrum; FSpecView.DrawWaterfall; PbSpectrum.Invalidate; PbWaterfall.Invalidate; + if PbRuler <> nil then PbRuler.Invalidate; end; rfWfAGC: FSpecView.WfAGCEnabled := FController.FWfAGCEnabled;