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 :

[DELPHI6] et TImage et Stretch


Sujet :

Delphi

  1. #1
    Membre du Club
    Inscrit en
    Mai 2003
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 81
    Points : 50
    Points
    50
    Par défaut [DELPHI6] et TImage et Stretch
    Bonjour,


    Je souhaiterais afficher un icône (à l'échelle) dans un TImage.
    Pour le redimensionnement de l'icône j'ai utilisé Stretch mais ça ne fonctionne pas.

    Comment puis-je m'y prendre ?

    Merci.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
      Image:=TImageExt.Create(Panel);
      Timage(Image).Parent:=Panel;
      Image.Align:=alClient;
      Image.Stretch:=True;
      Image.Picture.Icon.Handle:=GetIcon(FormBarre.Handle);

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    624
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 624
    Points : 754
    Points
    754
    Par défaut
    La solution passe par l'utilisation de DrawIconEx qui utilise la largeur et la hauteur du rectangle.

  3. #3
    Membre du Club
    Inscrit en
    Mai 2003
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 81
    Points : 50
    Points
    50
    Par défaut
    J'ai essayé ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
    // Icon:TIcon > A été créé
    // Image : TImage > A été créé
     
    Icon.LoadFromFile('App.ico');
    DrawIconEx(Image.Canvas.Handle,0,0,Icon.Handle,16,16,0,0,DI_DEFAULTSIZE);
    mais j'ai une zone blanche à la place de mon icône.

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    624
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 624
    Points : 754
    Points
    754
    Par défaut
    Utilises la fonction comme cela:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    DrawIconEx(Image.Canvas.Handle,0,0,Icon.Handle,256,256,0,0,DI_NORMAL);
    On admet que timage est de dimension: width:256, height:256.
    Tu peux utiliser 512,512 etc...

    Bien évidemment la qualité du dessin diminue avec l'augmentation du zoom
    contrairement aux images vectorielles.

  5. #5
    Membre du Club
    Inscrit en
    Mai 2003
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 81
    Points : 50
    Points
    50
    Par défaut
    Merci. Le paramètre DI_NORMAL est celui qu'il faut employer.

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

Discussions similaires

  1. Timage et Canvas??
    Par vanack dans le forum C++Builder
    Réponses: 4
    Dernier message: 14/04/2007, 11h38
  2. une nouvelle image dans un Timage stretch
    Par copeau31 dans le forum Composants VCL
    Réponses: 5
    Dernier message: 26/01/2006, 15h00
  3. Problème avec la fonction Stretch de TImage
    Par laventure dans le forum Composants VCL
    Réponses: 5
    Dernier message: 09/08/2005, 13h06
  4. [TImage] Transfert de Picture par pixels.
    Par H2D dans le forum Langage
    Réponses: 9
    Dernier message: 25/10/2003, 14h37
  5. TImage
    Par Thylia dans le forum C++Builder
    Réponses: 5
    Dernier message: 09/07/2002, 20h03

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