begin process at 2012 02 09 14:11:19
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Delphi

 > 

Mutimédia

 > 

Image & Vidéo

 > 

Transfert de Bitmap


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Transfert de Bitmap

jeudi 19 juillet 2007 à 11:19:52 | Transfert de Bitmap

kinay

Membre Club
J'ai un tableau de Bitmap contenant chacun des 'fichiers BMP',
TTableau = array [1..10] of TBitmap
MonTab : TTaBleau

Les bitmap sont ensuite chargé par un loadfromfile

Sur ma Form, j'ai un TImage (MonImage), mais lorque je veux faire par exemple

MonImage.canvas.draw(50,50,MonTab[5])

j'ai une erreur 'Adress violoation at address 000000000'

Merci d'avance pour votre aide
jeudi 19 juillet 2007 à 11:29:37 | Re : Transfert de Bitmap

cirec

Membre Club Administrateur CodeS-SourceS
Salut,

Essaye comme ceci :

MonImage.Picture.assign(MonTab[5]);

 
@+
Cirec

jeudi 19 juillet 2007 à 12:09:34 | Re : Transfert de Bitmap

florenth

Membre Club
Salut !

Es-tu sûr d'avoir bien rempli ton tableau de bitmaps avant de t'en servir.
Fais un Assert(Assigned(monTab[5]), 'Bitmap non assigné') avant ta ligne qui plante et si tu as une erreur, c'est que tu n'a spas initialisé correctement tes bitmaps.

Sinon, tu peux aussi nous poster le code de remplissage, histoire qu'on y jette un oeil.

++
jeudi 19 juillet 2007 à 12:44:49 | Re : Transfert de Bitmap

kinay

Membre Club
Merci pour vos réponses :
J'ai déjà essayer le assign : sans succès
Pour le assert : je n'ai pas d'erreur

Voici mon source de remplissage. L'idée est la suivante :
J'ai un fichier BMP qui contient 52 cartes, je les découpe pour les mettre dans des BMP

Type
TCarte = record
    cou : integer;
    Val : integer;
    Img : TBitmap;
end;
TTalon = record
    Cartes : Array [1..110] of TCarte;
    Rang : integer
end;

Talon : TTalon

Procedure ....
begin
   r:=1;
   Image:=TBitmap.create;
   Image.LoadFromFile('E:\\cartes.bmp'); // Ce fichier contient 52 Cartes

   for c:=1 to 4 do
   begin
      for v:=1 to 13 do
      begin

         R1:=Rect(1,1,71,96);
         R2:=rect(1,1+(r-1)*96,71,r*96);
         Partie:=TBitmap.create;
         Partie.Width:=71; Partie.Height:=96;
         PArtie.canvas.CopyRect(R1,Image.Canvas,R2);
         Talon.Cartes[r].img:=Partie;
         Partie.free;
         r:=r+1;
      end;
   end;
   Talon.Rang:=1;
   Image.Free;
end;
jeudi 19 juillet 2007 à 12:59:09 | Re : Transfert de Bitmap

florenth

Membre Club
Réponse acceptée !
Enlève donc le Partie.free !!!!!
jeudi 19 juillet 2007 à 13:04:50 | Re : Transfert de Bitmap

florenth

Membre Club
Enfin... ça signifie donc qu'il faudra créer une procédure chargée de les libérer, ces bitmaps, dans le OnDestroy par exemple.
jeudi 19 juillet 2007 à 14:00:33 | Re : Transfert de Bitmap

kinay

Membre Club
Effectivement, en enlevant le Partie.free, cela fonctionne.

Peux-tu me donner une explication :
Quand je fais 'Talon.Cartes[r].img:=Partie;', je ne créé pas une copie de Partie, mais je pointe vers Partie. Est-ce Bien ça.

En tout cas, Merci beaucoup
jeudi 19 juillet 2007 à 14:34:09 | Re : Transfert de Bitmap

florenth

Membre Club
Oui tout à fait.
Les objets sont affectés, non assignés. Cela signifie que "Talon.Cartes[r].img:=Partie" ne fait en réalité qu'une copie de pointeur. Après, si tu modifies Partie, cela revient à modifier Talon.Cartes[r].img

N'oublies surtout pas la destruction !

++



Cette discussion est classée dans : transfert, bitmap


Répondre à ce message

Sujets en rapport avec ce message

dessin sur un bitmap [ par jlg75 ] J'ai commencé un petit prog de dessin pour mes débuts en DELPHI.Je dessine sur un bitmap (feuille blanche pour l'instant),chargé dans une TImage. J'ut Convertir un bitmap en icone [ par sebastienbro ] J'aimerai savoir comment convertir un bitmap, contenu dans une Timage, en icone Convetir une imag en Bitmap [ par sebastienbro ] Je veux convertirune image en ICO, mais il me met une erreur : Image icône incorrectAidez moi !!!!! transfert de fichier par le reseau [ par redfaction ] bon jaimerai faire passer plusieurs fichier par reseau. j'ai essaye avec sendbuf mais je suis oblige de mettre des sleep entre (sinon ca plante) ce qu transfert des fichiers dans delphi...!!! [ par snakefinger ] salut, je voudrais savoir comment transferer des fichiers(ex: *tmp..) d'un repertoire a un autre .merci d'avance .A+. Bitmap, tableau de stockage .... [ par dami ] Bonjour a tous. Pour les besoins d'OpenGL, j'ai besoin de transformer mon Jpeg en BMP puis de stocker le BMP sous forme de tableau. J'ai récupéré et a Anim pdt transfert fichier [ par kalib ] bonjourje realise une application qui transfert un fichier, durant ce transfert j'aimerais afficher le GIF de base qu'utilise windows(deux dossier ave FTP/Transfert de fichier [ par PatSW ] Heu, est-ce qu'il y a un moyen en delphi de downloader une partie de fichier en ftp??? (exemple: D.A.P/Resumer un download etc)Merci!The Universal ßð¥ Transfert images par Stream [ par mattsprings ] Bonjour, je cherche comment transferer des images dans un memorystream à travers le réseau. Je veux envoyer des images venant d'un composant TImage, à Contrôle de saisie d'un Bitmap [ par lugo ] Bonjour à tous,J'utilise ce bout de code pour contrôler si l'opérateur a bien faitune sélection d'une Bitmap et qu'elle est bien présente dans la pres


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,934 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales