Problem z wyłączeniem podświetlenia po zakończe

0

Hello!

Zgodnie z zapisami w Delphi FAQ nr 53 z tej strony wpisałem instrukcje mające wywołać funkcje migotania programu na pasku zadań.

  1. Wpisałem przed procedurami:
    var
    Miganie : Boolean;
  2. Ustawiłem kompunent Timer1 i wpisałem procedurę:
    procedure TForm1.Timer1Timer(Sender: TObject);
    begin
    Miganie := Not Miganie;
    FlashWindow (Application.Handle, Miganie);
    end;
  3. W innej procedurze, wpisałem:
    Timer1.Enabled := True;
  • to z założenia włączyło migotanie

Aby zatrzymać migotanie, w innej procedurze (wywoływanej przyciskiem) wpisałem:
Timer1.Enabled := False;

I jest problem: na ogół ikona nadal świeci (nie miga, ale zostaje podświetlona).
Zauważyłem, że swiecenie znika, po minimalizacji i przywróceniu, jednak nie zawsze.
Ma ktoś pomysł jak wyłaczyć świecenie...?

<font color="red">Thx</span>

0

Timer1.Enabled:=False;
FlashWindow(Application.Handle, False);

0

próbowałem to już zanim wystawiłem posta, ale to też nie wyłącza świecenia :)

0

Uproszczony kod dla ciekawych problemu:
(Należy wstawić komponent Timer oraz Button i zarejestrować procedury... ;)

unit Unit1;

(...)

var
Form1: TForm1;

implementation

var
Miganie : Boolean;
{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
Timer1.Enabled := True;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
Miganie := Not Miganie;
FlashWindow (Application.Handle, Miganie);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Timer1.Enabled := False;
FlashWindow(Application.Handle, False);
end;

end.

1 użytkowników online, w tym zalogowanych: 0, gości: 1