[C++Builder] Utilisation d'1 ImageList

Utilisation d'1 ImageList [C++Builder] - Programmation

Marsh Posté le 05-03-2002 à 17:23:00    

J'aimerais utiliser un ensemble d'images et pouvoir les indexer. A priori, C++Builder propose une classe TImageList pour gérer ça, seulement je ne sais pas comment insérer des images dans ma liste (la composer en fait)...
S'il faut dabord créer 20 instances de TImage pour ensuite pouvoir les insérer chacune dans la liste, ça n'avance pas à grand-chose nivo lourdeur...
Klk1 pourrait-il me dire comment ça marche, et si ce ke je viens de dire est vrai, donner une parade...
 
MERCI D'AVANCE...

Reply

Marsh Posté le 05-03-2002 à 17:23:00   

Reply

Marsh Posté le 05-03-2002 à 18:04:09    

à la base elles sont où tes images ? si ce sont des .bmp tu dois créer chaque fois un TBitmap, faire un LoadFromFile, et ensuite via un Add l'ajouter à ton ImageList.


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

Marsh Posté le 05-03-2002 à 18:19:36    

Mes images sont contenues dans un dossier zindoz klkconque...
Ce ke tu me réponds, je l'ai déjà posé dans ma question: s'il fo dabord créer 20 images (exemple), les charger, puis seulement les insérer dans ma liste, c pire ke porc nivo lourdeur.
 
N'y a-t-il pas un autre moyen ki coute moins pour la machine...?

Reply

Marsh Posté le 05-03-2002 à 19:59:56    

j'ai dit créer un TBitmap, pas un TImage
 
et tu dois pas le recréer chaque fois.
 
y a peut etre moyen de charger directement un bmp dans une imagelist sans passer par un TBitmap, mais je sais pas comment
 

Code :
  1. aBitmap := TBitmap.Create;
  2. try
  3.   aBitmap.LoadFromFile('fichier1');
  4.   ImageList1.Add(aBitmap);
  5.   aBitmap.LoadFromFile('fichier2');
  6.   ImageList1.Add(aBitmap);
  7. finally
  8.   aBitmap.Free;
  9. end;


 
ouais c'est pas très bô :/
 
si toutes tes images ont la meme taille tu peux toutes les mettres dans 1 seul bmp, l'une a coté de l'autre, et faire:
 

Code :
  1. aBitmap := TBitmap.Create;
  2. try
  3.   with ImageList1 do
  4.   begin
  5.     aBitmap.LoadFromFile('fichier');
  6.     Height := hauteur des images;
  7.     Width := largeur d'une image;
  8.     Add(aBitmap);
  9.   end;
  10. finally
  11.   aBitmap.Free;
  12. end;

 

[jfdsdjhfuetppo]--Message édité par antp--[/jfdsdjhfuetppo]


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

Marsh Posté le 06-03-2002 à 09:42:30    

j'utilise du jpeg...

Reply

Marsh Posté le 06-03-2002 à 10:14:23    

Bhen alors tu utilises un TJPEGImage, qui dérive de TGraphic tout comme le fait le TBitmap.
Le problème c'est que l'imagelist veut des TBitmap.
Donc tu dois avoir un TBitmap intermédiaire et faire:
lebitmap.Assign(lejpeg);
Et ensuite ajouter lebitmap à l'imagelist.

 

[jfdsdjhfuetppo]--Message édité par antp--[/jfdsdjhfuetppo]


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

Marsh Posté le 06-03-2002 à 10:37:14    

c buen, ya une propriété tpicture pour les jpeg ki permet de faire un loadfromfile, c nikel...
 
Merci pour tes indications antp...
P.S.:tu kiffes les fourmis ou koi...?

Reply

Marsh Posté le 06-03-2002 à 11:00:44    

non, c'est les trois premières lettres de mon prénom + la première lettre de mon nom :D

 

[jfdsdjhfuetppo]--Message édité par antp--[/jfdsdjhfuetppo]


---------------
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