Pourquoi mes images ne s'affichent pas

Pourquoi mes images ne s'affichent pas - Delphi/Pascal - Programmation

Marsh Posté le 19-04-2003 à 17:16:35    

J'ai une Form avec une scroolbax et je veux y crée des images lors de l'execution avec ce code:

Code :
  1. procedure TFCatEdit.FormShow(Sender: TObject);
  2. var
  3.   Nombre_Icones: integer;
  4.   Nom_Icones: array of string;
  5.   Lien_Icones: array of string;
  6.   indice: integer;
  7.   image: array of TImage;
  8. begin
  9. //test
  10.   Nombre_Icones := 6; //on fera un chargement dans le fichier ini
  11.   for indice := 1 to Nombre_Icones do
  12.   begin
  13.     SetLength(image, Nombre_Icones);
  14.     SetLength(Nom_Icones, Nombre_Icones);
  15.     SetLength(Lien_Icones, Nombre_Icones);
  16.     Image[Nombre_Icones - 1] := TImage.Create(FCatEdit.scrollbox1);
  17.     Image[Nombre_Icones - 1].Left := 8;
  18.     Image[Nombre_Icones - 1].Top := 8 + Nombre_Icones * 10;
  19.     Image[Nombre_Icones - 1].Width := 32;
  20.     Image[Nombre_Icones - 1].Height := 32;
  21.     Image[Nombre_Icones - 1].Stretch := true;
  22.     Image[Nombre_Icones - 1].Picture.loadfromfile(ExtractFilePath(Application.ExeName) + 'Images/Catégorie/Users.bmp'); //pour l'exemple
  23.     Image[Nombre_Icones - 1].Visible := true;
  24.   end;
  25. end;


 
Ca compile, ca tourne mais rien ne s'affiche. Ou est l'erreur?


---------------
Mes photos : http://500px.com/endemyon
Reply

Marsh Posté le 19-04-2003 à 17:16:35   

Reply

Marsh Posté le 19-04-2003 à 17:30:11    

ajoute Image[Nombre_Icones - 1].Parent := Self; ;)
 
parc contre y a un truc bizarre : tu devrais mettre Image[indice] plutôt que Image[Nombre_Icones - 1], non ?
(et faire indice de 0 à Nombre_Icones-1 évidemment)
Pense aussi à mettre un nom différent à tes images
 
Image[Nombre_Icones - 1].Name := Format('NouvelleImage%d', [indice]);


Message édité par antp le 19-04-2003 à 17:31:55

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 19-04-2003 à 18:47:47    

Il faut bien sur mettre indice et pas Nombre_Icones  :non:  
J'ai ajouté la ligne :  
Image[indice].Parent := Self;
mais j'ai une erreur à la compilation : incompatible type TWidgetControl and FCatEdit?


---------------
Mes photos : http://500px.com/endemyon
Reply

Marsh Posté le 19-04-2003 à 19:00:59    

tu fais une application CLX ? Ou bien tu mélanges les deux (ça expliquerait pq ça marche pas :D)
TFCatEdit c'est bien une TForm ?


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 22-04-2003 à 10:33:50    

Non, je ne fait pas une application clx (en fait je ne sait même pas ce que c'est). TFCatEdit est bien une TForm.

Reply

Marsh Posté le 22-04-2003 à 10:36:04    

alors c'est ton TImage qui est du mauvais type... Donne la liste des "uses", il doit y avoir une mauvaise unit inclue


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 22-04-2003 à 11:01:00    

Code :
  1. uses
  2.   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  3.   Dialogs, TFlatSpeedButtonUnit, StdCtrls, CorelButton, QExtCtrls, QGraphics;

Reply

Marsh Posté le 22-04-2003 à 11:15:28    

Tu avais raison (comme toujours) , j'utilisait bien un composant clx pour mon Timage. Comme quoi, on peut utiliser quelque chose dont on ignore l'existance. Merci pour ton aide.

Reply

Marsh Posté le 22-04-2003 à 11:24:44    

ouais c'est à cause de QExtCtrls, QGraphics; que tu dois virer
(faut metre juste Graphics, les units dont le nom commence par Q c'est du CLX)


Message édité par antp le 22-04-2003 à 11:25:13

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed