Comment animer l'icône de la form ou du systray.

Description

Un petit exemple non optimisé qui explique comment changer ou animer l'icône de la Form ou celle du Systray.

Pendant que j'y étais, j'ai aussi sonorisé les icônes! lol

Le zip est commenté, mais il n'y a aucune difficulté.

Source / Exemple :


unit Unit1;
// Par Caribensila. AOUT 2004
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ImgList, StdCtrls, ExtCtrls, MPlayer;
type
  TForm1 = class(TForm)
    Image1: TImage;
    Image2: TImage;
    Timer1: TTimer;
    Button3: TButton;
    Button4: TButton;
    Image3: TImage;
    Image4: TImage;
    MediaPlayer1: TMediaPlayer;
    MediaPlayer2: TMediaPlayer;
    Label1: TLabel;
    procedure Timer1Timer(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Déclarations privées }
  public
    { Déclarations publiques }
  end;
var
  Form1: TForm1;

implementation

{$R *.dfm}
var
  N : Byte; // Pour numéroter images et sons.

procedure TForm1.Timer1Timer(Sender: TObject);
begin
If (N=1) then begin
  MediaPlayer2.Play; //Jouer le son 2.
  Application.Icon.Assign(Image2.Picture);//Changer l'icone du systray.
  Form1.Icon.Assign(Image2.Picture);//Changer l'icone de la Form.
  N := 2;
  Timer1.Interval := 250;   //Changer "Interval" du timer pour simuler
  Exit                      //        des battements réalistes.
end;
If (N=2) then begin
  MediaPlayer1.Play;
  Application.Icon.Assign(Image1.Picture);
  Form1.Icon.Assign(Image1.Picture);
  N := 3;
  Timer1.Interval := 750;
  Exit
end;
If (N=3) then begin
  MediaPlayer2.Play;
  Application.Icon.Assign(Image3.Picture);
  Form1.Icon.Assign(Image3.Picture);
  N := 4;
  Timer1.Interval := 250;
  Exit
end;
If (N=4) then begin
  MediaPlayer1.Play;
  Application.Icon.Assign(Image1.Picture);
  Form1.Icon.Assign(Image1.Picture);
  N := 1;
  Timer1.Interval := 750;
  Exit
end;
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
Timer1.Enabled := False;
Application.Icon.Assign(Image4.Picture);
Form1.Icon.Assign(Image4.Picture);
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
N := 1;
Application.Icon.Assign(Image1.Picture);
Timer1.Enabled := True;
end;
end.

Conclusion :


Essayé et testé sur Windows XP.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.