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

C++Builder Discussion :

Insertion d'image dans un stringrid


Sujet :

C++Builder

  1. #1
    Membre confirmé
    Avatar de Darkaurora
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2010
    Messages
    382
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2010
    Messages : 382
    Points : 549
    Points
    549
    Billets dans le blog
    1
    Par défaut Insertion d'image dans un stringrid
    bonjour tout est dans le titre et j'ai trouver ce lien
    http://www.developpez.net/forums/d75...e-tstringgrid/

    cependant j'ai besoin d'une méthode similaire pour insérer une image que je récupère de ma bdd pour la mettre dans une case précise or cette méthode est appelé dès le début
    de plus toujours en testant ce code je me suis rendu compte qu'en fait
    le code de blondelle et celui ci sont similaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    TRect R;
            Rect.Left = 1;
            Rect.Right = 1 + Rect.Right - Rect.Left;
            Rect.Top = 1;
            Rect.Bottom = 1 + Rect.Bottom - Rect.Top;
            Image1->Visible = false;
            StringGrid1->Canvas->CopyRect(Rect, Image1->Picture->Bitmap->Canvas, Rect);
            StringGrid1->Canvas->Brush->Style = bsClear;
    mis à part une gestion graphique certaine les boucles ne servent à rien ou alors je ne comprend pas

    quelqu'un peut il m'aider? ou m'expliquer comment faire

    merci d'avance
    Je préfère fermer ma gueule et passer pour un con que de l'ouvrir et ne laisser aucun doute à ce sujet.

  2. #2
    Membre averti

    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    288
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Janvier 2003
    Messages : 288
    Points : 334
    Points
    334
    Par défaut
    Si OnDrawCell est appelé au début c'est parceque la fenêtre à besoin de se dessiner.
    Toutes les fenêtres Windows ont une procédure de dessin et celle dérivée par la VCL pour TDrawGrid/TStringGrid est OnDrawCell.
    Chaque fois qu'une cellule à besoin de se dessiner (c'est elle qui est demandeur et non toi qui est déclencheur) le contrôle appelle OnDrawCell. C'est un principe Windows de base.

    Evidemment ce qui t'intéresse est de controler le déclenchement.
    Pas de pb avec les méthode Invalidate() (ou mieux encore InvalidateRect() mais à coder toi-même).

    Dans l'exemple de Blondelle attention. Il s'agit d'un tutorial à but explicatif et démonstratif et non du code d'un vrai application. Ne charge pas des image de BDD à chaque fois que OnDrawCell est appelé - très fréquent parfois.
    Il faut les charger, les stocker, puis les dessiner dans le OnDrawCell. A mon avis c'est ça la difficulté.

Discussions similaires

  1. Problème d'insertion d'image dans une fenêtre.
    Par Antigonos Ier Gonatas dans le forum Tkinter
    Réponses: 2
    Dernier message: 26/08/2006, 12h44
  2. Back office et insertion d'images dans un formulaire
    Par djedje37et28 dans le forum Langage
    Réponses: 4
    Dernier message: 28/07/2006, 10h50
  3. [MySQL] Insertion d'image dans une base de données
    Par dragonfly dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 16/03/2006, 14h59
  4. [JTable] Insertion d'images dans la première colonne
    Par cocolepelo dans le forum Composants
    Réponses: 2
    Dernier message: 29/11/2005, 15h17

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