Quelqu'un sait pourquoi je n'arrive pas à copier l'image contenue dans un TimageList à index indiqué vers le Timage ?

- couverture est le TImage destination.
- ImageList1 est la liste d'image.
- ARow est l'index de l'image à copier.

Code qui marche pas :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);
begin
  ImageList1.GetBitmap(ARow,couverture.Picture.Bitmap);
end;
couverture (le TImage) reste toujours vide avec ce code, alors qu'il se remplit bien d'une image quand je la charge par sa fonction loadFromFile :

Code qui marche :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);
begin
  ImageList1.GetBitmap(ARow-1,couverture.Picture.Bitmap);
  if (ARow-1=0) then couverture.Picture.LoadFromFile('couvertures/livre1.bmp');
  if (ARow-1=1) then couverture.Picture.LoadFromFile('couvertures/livre2.bmp');
end;
Les -1 c'est parce que l'index des lignes du stringGrid commence à 1, tandis que celui du TimageList commence à 0.

Auparavant, le TImageList à été chargé par :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
procedure TForm1.couvertureClick(Sender: TObject);
begin
  if OpenPictureDialog1.Execute then
  begin
    couverture.Picture.LoadFromFile(OpenPictureDialog1.FileName);
    ImageList1.Add(couverture.Picture.Bitmap,Nil);
  end;
end;
En attendant, j'utilise ce code qui fonctionne bien :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);
begin
  ImageList1.GetBitmap(ARow-1,couverture.Picture.Bitmap);
  chaine:='couvertures/livre'+IntToStr(ARow)+'.bmp';
  couverture.Picture.LoadFromFile(chaine);
end;
Ce code utilise le loadfromfile mais je préfèrerais charger l'image dans Timage en utilisant directement l'image prise du TimageList (voir haut du post)