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

  1. #1
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    décembre 2011
    Messages
    3 276
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Sénégal

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : décembre 2011
    Messages : 3 276
    Points : 11 918
    Points
    11 918
    Billets dans le blog
    5

    Par défaut Dessiner avec BGRABitmap dans un composant de type TfpgImagePanel

    Bonjour !

    Ma question concerne les bibliothèques fpGUI et BGRABitmap.

    J'ai un programme qui crée une image avec BGRABitmap et affiche cette image directement dans la fenêtre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    procedure DrawEllipseHello(bmp: TBGRABitmap);
    begin
      ...
    end;
     
    { TMainForm }
     
    procedure TMainForm.FormPaint(Sender: TObject);
    begin
      FBmp.SetSize(Width, Height);
      DrawEllipseHello(FBmp);
      FBmp.Draw(Canvas, 0, 0);
    end;
    Je voudrais afficher l'image, non plus directement dans la fenêtre, mais dans un TfpgImagePanel.

    J'ai essayé de remplacer FBmp.Draw(Canvas, 0, 0); par FBmp.Draw(Panel1.Canvas, 0, 0); mais apparemment ce n'est pas la bonne façon de faire : ça compile mais l'image ne s'affiche pas.

    Sauriez-vous comment faire ?

    Je joins le programme complet.
    Fichiers attachés Fichiers attachés

  2. #2
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    mars 2005
    Messages
    3 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : mars 2005
    Messages : 3 144
    Points : 9 045
    Points
    9 045

    Par défaut

    Bonjour Roland,

    Quid de déplacer le FBmp.Draw(Panel1.Canvas, 0, 0) dans le Panel.OnPaint ?
    Delphi 5 Pro - Delphi 10.2 Tokyo Community Edition - CodeTyphon 6.50 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  3. #3
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    décembre 2011
    Messages
    3 276
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Sénégal

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : décembre 2011
    Messages : 3 276
    Points : 11 918
    Points
    11 918
    Billets dans le blog
    5

    Par défaut

    Citation Envoyé par tourlourou Voir le message
    Bonjour Roland,

    Quid de déplacer le FBmp.Draw(Panel1.Canvas, 0, 0) dans le Panel.OnPaint ?
    Bonjour tourlourou !

    Oui, ça marche.

    Ci-joint le code corrigé.
    Fichiers attachés Fichiers attachés

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 19/05/2015, 16h04
  2. Mettre une zone de dessin avec photo dans un tableau
    Par sergiocorleon dans le forum VBA Word
    Réponses: 8
    Dernier message: 02/02/2009, 21h31
  3. Dessiner avec GDI dans un CWindowDC
    Par squale32 dans le forum MFC
    Réponses: 0
    Dernier message: 22/04/2008, 16h00
  4. Réponses: 1
    Dernier message: 22/10/2006, 16h15
  5. Le dessin avec VC dans une fenetre windows
    Par ccensam dans le forum MFC
    Réponses: 3
    Dernier message: 03/11/2005, 23h40

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