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 :

Image popup d'une fiche à partir d'un TListImage


Sujet :

Composants VCL Delphi

  1. #1
    Inactif  

    Inscrit en
    Mars 2002
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 18
    Points : 111
    Points
    111
    Par défaut Image popup d'une fiche à partir d'un TListImage
    Voila, pour insérer une image dans un Nouveau Items sur le popup d'une fiche j'utilise actuellement un TImage, je souhaite récupéré celle-ci à partir d'un TListImage.

    Merci d'avance de votre aide.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    procedure TForm1.FormCreate(Sender: TObject);
    var
      SystemMenu: THandle;
      ItemIndex: Cardinal;
    begin
      SystemMenu := GetSystemMenu(Handle, False);
      AppendMenu(GetSystemMenu(Handle, False), MF_SEPARATOR, 0, '');
      AppendMenu(GetSystemMenu(Handle, False), MF_STRING, 0, 'Nouveau Items...');
      ItemIndex := 8;
      SetMenuItemBitmaps(SystemMenu, ItemIndex, MF_BYPOSITION, Image1.Picture.Bitmap.Handle, Image1.Picture.Bitmap.Handle);
      Application.OnMessage := OnMessage;
    end;
    Cordialement
    http://www.egri.co.uk/smileys/walk.gif http://www.developpez.com/delphi/delphihlp.htm
    - Delphi Studio 7 Architecte.
    - Interbase / SQL Server 2000 / Oracle 9i
    - Windows (2000 Famille Server, 98, Me, XP Professionnel).

  2. #2
    Membre chevronné
    Avatar de Pierre Castelain
    Inscrit en
    Avril 2002
    Messages
    523
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 523
    Points : 1 943
    Points
    1 943
    Par défaut
    C'est exactement le même principe sauf qu'il faut créer une bitmap "manuellement". Le plus simple est d'avoir une liste (ou un tableau) de bitmaps et de les créer de la façon suivante:
    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
    18
    19
    20
    procedure TForm1.FormCreate(Sender: TObject);
    var
      SystemMenu: THandle;
      ItemIndex: Cardinal;
      bmp: TBitmap;
    begin
      SystemMenu := GetSystemMenu(Handle, False);
      AppendMenu(GetSystemMenu(Handle, False), MF_SEPARATOR, 0, '');
      AppendMenu(GetSystemMenu(Handle, False), MF_STRING, 0, 'Nouveau Items...');
      ItemIndex := 8;
     
      bmp:= TBitmap.Create;
      bmp.Width:= ImageList1.Width;
      bmp.Height:= ImageList1.Height;
      ImageList1.Draw(bmp.Canvas, 0, 0, 0);
      SetMenuItemBitmaps(SystemMenu, ItemIndex, MF_BYPOSITION, bmp.Handle, bmp.Handle);
      // Ajouter ce bmp à la liste ou au tableau de bitmaps (nécessaire pour pouvoir
      // les libérer en fin d'application)
      Application.OnMessage := OnMessage;
    end;
    Il faudra bien sur libérer les bitmaps créées lorsque l'application se termine.

  3. #3
    Inactif  

    Inscrit en
    Mars 2002
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 18
    Points : 111
    Points
    111
    Par défaut
    Slt Pierre, je te remercie pour ton aide. C'est en fait un classique je connaissais mais je ne pensais pas du tout à ça.

    Salutations.
    http://www.egri.co.uk/smileys/walk.gif http://www.developpez.com/delphi/delphihlp.htm
    - Delphi Studio 7 Architecte.
    - Interbase / SQL Server 2000 / Oracle 9i
    - Windows (2000 Famille Server, 98, Me, XP Professionnel).

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2002
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 41
    Points : 29
    Points
    29
    Par défaut
    Bonjour,

    Je tente d'utiliser les fonctions AppendMenu et SetMenuItemBitmaps non sur le menu system de la fiche mais sur un TPopupMenu appartenant à cette fiche, que j'ai nommé 'Popup'.

    Je fournis donc Popup.Handle comme premier paramètre pour les deux fonctions, sans aucun résultat !

    Pour les icônes, je les stocke dans un array of TBitmap.

    Merci de votre aide.
    Bernard

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

Discussions similaires

  1. [XL-2010] Macro création d'une fiche à partir d'un modèle + ordre
    Par JGUYO dans le forum Excel
    Réponses: 3
    Dernier message: 23/07/2014, 10h31
  2. [Lazarus] Problème d'affichage d'une fiche à partir d'une DLL
    Par ChPr dans le forum Lazarus
    Réponses: 26
    Dernier message: 07/10/2011, 14h55
  3. Charger une image JPG dans une fiche - ADO/Delphi
    Par tleboukaka dans le forum Bases de données
    Réponses: 4
    Dernier message: 11/05/2010, 16h20
  4. inserer une image jpg sur une fiche en saisie
    Par zazou56 dans le forum IHM
    Réponses: 4
    Dernier message: 05/02/2007, 14h39
  5. Telecharger une image présente dans une BDD à partir de PHP
    Par guillaumeIOB dans le forum Bibliothèques et frameworks
    Réponses: 58
    Dernier message: 02/04/2006, 15h42

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