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 342
    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 342
    Points : 12 109
    Points
    12 109
    Billets dans le blog
    7

    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 192
    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 192
    Points : 9 198
    Points
    9 198
    Billets dans le blog
    2

    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 342
    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 342
    Points : 12 109
    Points
    12 109
    Billets dans le blog
    7

    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, 17h04
  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, 22h31
  3. Dessiner avec GDI dans un CWindowDC
    Par squale32 dans le forum MFC
    Réponses: 0
    Dernier message: 22/04/2008, 17h00
  4. Réponses: 1
    Dernier message: 22/10/2006, 17h15
  5. Le dessin avec VC dans une fenetre windows
    Par ccensam dans le forum MFC
    Réponses: 3
    Dernier message: 04/11/2005, 00h40

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