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

Composants VCL Delphi Discussion :

Mettre une image png dans un Timage


Sujet :

Composants VCL Delphi

  1. #1
    Débutant
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    886
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 886
    Points : 330
    Points
    330
    Par défaut Mettre une image png dans un Timage
    salut

    j'ai fais une recherche et j'ai trouvé un post interessant :

    http://www.developpez.net/forums/vie...&highlight=png

    j'ai donc utilisé ceci :

    AFFICHAGE DE L'IMAGE - Il suffit d'assigner la propriété Picture d'un TImage pour afficher l'image source :
    Code:
    ...
    Image1.AutoSize := True;
    Image1.Picture.Assign(png);
    ...


    or j'ai le msg d'erreur qui s'arrête sur mon "Image1.Picture.Assign(png);"

    [Erreur] Unit1.pas(119): Types incompatibles : 'TPersistent' et 'TPNGObject'

    je pense avoir tout fait

    qqun peut m'aider ?

    mon doe complet est le suivant :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    procedure TForm1.Button3Click(Sender: TObject);
    begin
    png := TPNGObject.Create;
    png.LoadFromFile('C:\image.png');
    Image1.AutoSize := True;
    Image1.Picture.Assign(png);
    Image1.Picture.LoadFromFile(png);
    end;

  2. #2
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Bonjour,

    Ceci supprimera probablement l'erreur de compilation:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Image1.Picture.Graphic.Assign(png);
    " Le croquemitaine ! Aaaaaah ! Où ça ? " ©Homer Simpson

  3. #3
    Débutant
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    886
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 886
    Points : 330
    Points
    330
    Par défaut
    non tjrs pas

    [Erreur] Unit1.pas(118): Types incompatibles : 'TPersistent' et 'TPNGObject'

    jai erreur sur ces 3 lignes là :

    Image1.Picture.Graphic.Assign(png);
    Image1.Picture.Assign(png);
    Image1.Picture.LoadFromFile(png);

    jai testé chacune toute seul et impossble de comiler

  4. #4
    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
    Désolé, j'ai pas Delphi sous la main, mais comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Image1.Picture.Graphic := png;
    :
    "Si vous voulez être l’esclave des banques et payer pour financer votre propre esclavage, alors laissez les banquiers créer la monnaie" - Josiah Stamp, 1920, Gouverneur de la Banque d’Angleterre
    "Qui ne peut acheter ruine qui voudrait vendre" - Jacques Duboin.
    "Nous n'héritons pas la terre de nos parents, nous l'empruntons à nos enfants." - Antoine de Saint Exupéry

  5. #5
    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
    Je confirme (avec un Delphi sous la main ce coup-ci): ca fonctionne.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    procedure TForm1.btn1Click(Sender: TObject);
    var
      vPng: TPNGObject;
    begin
      vPng := TPNGObject.Create;
      vPng.LoadFromFile('X:\www\Tests\test.png');
     
      img1.Picture.Graphic := vPng;
    end;
    "Si vous voulez être l’esclave des banques et payer pour financer votre propre esclavage, alors laissez les banquiers créer la monnaie" - Josiah Stamp, 1920, Gouverneur de la Banque d’Angleterre
    "Qui ne peut acheter ruine qui voudrait vendre" - Jacques Duboin.
    "Nous n'héritons pas la terre de nos parents, nous l'empruntons à nos enfants." - Antoine de Saint Exupéry

  6. #6
    Débutant
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    886
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 886
    Points : 330
    Points
    330
    Par défaut
    je ne comprends pas
    je copie colle ce code et j'ai l'erreur :

    [Erreur] Unit1.pas(140): Types incompatibles : 'TGraphic' et 'TPNGObject'

  7. #7
    Débutant
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    886
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 886
    Points : 330
    Points
    330
    Par défaut
    jai recommencé le projet et now c bon
    thx à tout le monde

  8. #8
    Membre expérimenté
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 132
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 132
    Points : 1 418
    Points
    1 418
    Par défaut
    Salut,

    Si le composant PNG que tu as trouvé est implémenté de façon compatible, il devrait être possible de charger directement l'image dans un TPicture.
    Pour ceci, il faut vérifier que le format est enregistré.

    voir TPicture.RegisterFileFormat()


    devYan.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 03/02/2012, 11h43
  2. Effacer une image chargée dans un TImage
    Par Lalanne dans le forum C++Builder
    Réponses: 2
    Dernier message: 11/07/2007, 16h26
  3. Mettre une image (png) ET un label sur une BOUTON
    Par diophantes dans le forum GTK+ avec C & C++
    Réponses: 6
    Dernier message: 26/02/2007, 11h05
  4. Mettre une image bmp dans un message box
    Par aadelfa dans le forum C++Builder
    Réponses: 7
    Dernier message: 06/02/2007, 14h45

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