IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Delphi Discussion :

[BitMap] Problème avec BitMap.LoadFromStream


Sujet :

Delphi

  1. #1
    Membre confirmé
    Avatar de Philippe Gormand
    Inscrit en
    Mars 2002
    Messages
    330
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 330
    Points : 647
    Points
    647
    Par défaut [BitMap] Problème avec BitMap.LoadFromStream
    Bonjour à tous.

    Je sais que je pourais faire autrement, comme par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Image2.Picture.BitMap.Assign(Image1.Picture.BitMap);
    Mais mon problème est du au chargement d'un bitmap stoké dans un TMemoryStream. Le chargement ne s'effectue pas.

    Le simple code suivant ne fonctionne pas. Quel qu'un a une idée ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    procedure TFichePrincipale.Button1Click(Sender: TObject);
    Var
       Flux : TMemoryStream;
       T    : Integer;
       Buff : ^Byte;
     
    begin
       Flux := TMemoryStream.Create;
       // Transfert de la photo dans le flux
       Image1.Picture.Bitmap.SaveToStream(Flux);
       // divers traitements
       Image2.Picture.BitMap.LoadFromStream(Flux);
       Image2.Refresh;
       Flux.Free;
    end;

  2. #2
    Rédacteur
    Avatar de Pedro
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    5 411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 5 411
    Points : 8 078
    Points
    8 078
    Par défaut
    Salut
    Ajoute ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    procedure TFichePrincipale.Button1Click(Sender: TObject);
    Var
       Flux : TMemoryStream;
       T    : Integer;
       Buff : ^Byte;
    
    begin
       Flux := TMemoryStream.Create;
       // Transfert de la photo dans le flux
       Image1.Picture.Bitmap.SaveToStream(Flux);
       // divers traitements
       Flux.Seek(0, soFromBeginning);
       Image2.Picture.BitMap.LoadFromStream(Flux);
       Image2.Refresh;
       Flux.Free;
    end;
    Et ça devrait fonctionner

  3. #3
    Membre éprouvé
    Avatar de neilbgr
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2004
    Messages
    651
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 651
    Points : 1 177
    Points
    1 177
    Par défaut
    +1

    Effectivement, il faut revenir au bédut du flux.
    On peut aussi faire Flux.Position := 0; (C'est pareil)

  4. #4
    Membre confirmé
    Avatar de Philippe Gormand
    Inscrit en
    Mars 2002
    Messages
    330
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 330
    Points : 647
    Points
    647
    Par défaut [Resolu]


    Avant de lire vos messages, j'avais trouvé la réponse dans un forum sur le WEB.
    Merci Pedro, mais désolé pour neilbgr, contrairement à ce que je pensais, la solution
    Effectivement, il faut revenir au bédut du flux.
    On peut aussi faire Flux.Position := 0; (C'est pareil)
    ne fonctionne pas. j'avais déja essayé, et dans certains cas ça marche. Vive les mystères de l'informatique.


    Mon problème maintenant : Je n'ai plus d'excuse pour travailler sur mon tuto ce WE, plutôt de faire du vélo.


    A la prochaine.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Bitmap et problème avec file move
    Par PatStan17 dans le forum ASP.NET
    Réponses: 7
    Dernier message: 02/06/2009, 08h20
  2. probléme avec BitMap
    Par sky88 dans le forum Débuter
    Réponses: 2
    Dernier message: 27/01/2009, 18h48
  3. Problème de mémoire avec Bitmap (c++/cli)
    Par bonofred dans le forum Windows Forms
    Réponses: 9
    Dernier message: 21/01/2009, 15h58
  4. Problème avec un BITMAP
    Par dede92 dans le forum Windows
    Réponses: 1
    Dernier message: 22/05/2006, 18h50
  5. Réponses: 2
    Dernier message: 16/01/2005, 23h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo