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

Bases de données Delphi Discussion :

comment effacer le contenu d'un DrawIcon ?


Sujet :

Bases de données Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Homme Profil pro
    Directeur technique
    Inscrit en
    Mai 2008
    Messages
    2 400
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 400
    Par défaut comment effacer le contenu d'un DrawIcon ?
    Salut

    dans l'évènement AfterScroll j'ai ce petit code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if ig_Fichier.Visible then
          begin
            h := ExtractAssociatedIcon(hInstance, PChar(ed_Chemin.Text),lpiIcon);
            DrawIcon(ig_Fichier.Canvas.Handle,0, 0, h);
          end;
    il sert à extraire l'icone d'un fichier et le mettre dans un composant Image sauf qu'il laisse la trace de l'icone précedente quand je parcours mon ensemble de données, je cherche le moyen pour l'effacer avant attribution d'un nouveau handle comme si j’initialisais le canevas du compo image.

    merci par avance.

  2. #2
    Membre éprouvé Avatar de freud
    Homme Profil pro
    Développeur
    Inscrit en
    Mai 2002
    Messages
    1 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 271
    Par défaut
    Bonjour,

    Avez-vous essayer avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ig_Fichier.Picture := nil;
    Ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ig_Fichier.Canvas.Refresh;

  3. #3
    Membre Expert
    Homme Profil pro
    Directeur technique
    Inscrit en
    Mai 2008
    Messages
    2 400
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 400
    Par défaut
    Merci freud, c'était ça effectivement, juste un nil quelle honte !!
    mais tant qu'on y est, j'ai un autre pépin, la propriété Transparent du compo Image est positionnée à True mais mon icone est toujours sur un fond blanc alors que j'ai besoin d'un fond transparent où est le problème ?

  4. #4
    Membre éprouvé Avatar de freud
    Homme Profil pro
    Développeur
    Inscrit en
    Mai 2002
    Messages
    1 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 271
    Par défaut
    Je ne sais pas mais peut-être qu'avec ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ig_Fichier.Picture.Icon.Transparent:=True ou False;

  5. #5
    Expert éminent
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Par défaut
    Citation Envoyé par Just-Soft Voir le message
    Merci freud, c'était ça effectivement, juste un nil quelle honte !!
    mais tant qu'on y est, j'ai un autre pépin, la propriété Transparent du compo Image est positionnée à True mais mon icone est toujours sur un fond blanc alors que j'ai besoin d'un fond transparent où est le problème ?
    Pourquoi n'utilises-tu pas un TPaintBox avec un appel à DrawIcon dans le OnPaint ?

    Sinon Image.Picture.Icon.Handle := ExtractAss....
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  6. #6
    Membre Expert
    Homme Profil pro
    Directeur technique
    Inscrit en
    Mai 2008
    Messages
    2 400
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 400
    Par défaut
    Citation Envoyé par Paul TOTH Voir le message
    Pourquoi n'utilises-tu pas un TPaintBox avec un appel à DrawIcon dans le OnPaint ?
    pour la simple raison que je ne fais que charge des icones donc le TImage est plus approprié pour cela d'après ce que j'ai compris !

    Citation Envoyé par Paul TOTH Voir le message
    Sinon Image.Picture.Icon.Handle := ExtractAss....
    c'est ce que j'utilise effectivement mais ce fond blanc n'est pas du tout beau à voir

  7. #7
    Expert éminent
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Par défaut
    Citation Envoyé par Just-Soft Voir le message
    pour la simple raison que je ne fais que charge des icones donc le TImage est plus approprié pour cela d'après ce que j'ai compris !
    je ne vois pas en quoi

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    procedure TForm1.FormCreate(Sender: TObject);
    var
      w : Word;
    begin
      w := 0;
      PaintBox1.Tag := ExtractAssociatedIcon(hInstance, PChar(Application.ExeName), w);
    end;
     
    procedure TForm1.PaintBox1Paint(Sender: TObject);
    begin
      DrawIcon(PaintBox1.Canvas.Handle, 0, 0, PaintBox1.Tag);
    end;
    Citation Envoyé par Just-Soft Voir le message
    c'est ce que j'utilise effectivement mais ce fond blanc n'est pas du tout beau à voir
    ce n'est pas ce que tu dis dans ton premier message

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
    procedure TForm1.FormCreate(Sender: TObject);
    var
      w : Word;
    begin
      w := 0;
      Image1.Picture.Icon.Handle := ExtractAssociatedIcon(hInstance, PChar(Application.ExeName), w);
    end;
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

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

Discussions similaires

  1. [Tkinter] Comment effacer le contenu d'une frame?
    Par Dam22 dans le forum Tkinter
    Réponses: 7
    Dernier message: 28/04/2006, 11h36
  2. [C#]Comment effacer le contenu d'un panel !!
    Par drekkii dans le forum Windows Forms
    Réponses: 3
    Dernier message: 25/01/2006, 08h45
  3. comment effacer le contenu d'un fichier
    Par groult jeremy dans le forum C++
    Réponses: 2
    Dernier message: 21/11/2005, 17h25
  4. comment effacer le contenu d'une table ttable
    Par naw dans le forum Bases de données
    Réponses: 4
    Dernier message: 07/07/2004, 16h13
  5. Comment effacer le contenu d'une scrollbox???
    Par Leclair2000 dans le forum C++Builder
    Réponses: 2
    Dernier message: 01/07/2004, 16h34

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