Voici comment mettre une TImageList dans une TStatusbar et le tous annimé,
comme le fait le compilateur Visual Studio
Un grand merci a DelphiProg
Il suffit d'avoir :
un TTimer
TImageList
TStatusBar
Source / Exemple :
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ImgList, ComCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Timer1: TTimer;
StatusBar1: TStatusBar;
ImageList1: TImageList;
procedure StatusBar1DrawPanel(StatusBar: TStatusBar;
Panel: TStatusPanel; const Rect: TRect);
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
ImgIndex: integer = 0;
implementation
{$R *.dfm}
procedure TForm1.StatusBar1DrawPanel(StatusBar: TStatusBar;
Panel: TStatusPanel; const Rect: TRect);
begin
ImageList1.Draw(StatusBar1.Canvas, Rect.Left + 2, Rect.Top, ImgIndex);
end;
procedure TForm1.Timer1Timer(Sender: TObject);
var Rect: TRect;
begin
if ImgIndex < ImageList1.Count - 1 then
begin
ImageList1.Draw(StatusBar1.Canvas, Rect.Left + 2, Rect.Top, ImgIndex);
inc(ImgIndex);
end
else
begin
ImageList1.Draw(StatusBar1.Canvas, Rect.Left + 2, Rect.Top, ImgIndex);
ImgIndex := 0;
end;
StatusBar1.Panels[2].Text:=TimeToStr(Now);
end;
end.
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.