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 :

Afficher un champs BLOB dans TImage


Sujet :

C++Builder

  1. #1
    Membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2007
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 144
    Points : 50
    Points
    50
    Par défaut Afficher un champs BLOB dans TImage
    Bonjour,

    J'arrive pas à afficher un champs image enregistré dans ma table dans un contrôle TImage (Image1).

    NB. C++Builder version 6 & Firebird :

    Structure de ma base :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    .
    .
    code integer not null,
    nom varcahr(30),
    myimage BLOB SUB_TYPE 0 SEGMENT SIZE 80,
    .
    .
    à l'affichage, je met à jour les contrôle de ma fenêtre d'affichage :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    EditCode->Text=MaTable->FieldByName("CODE")->AsInteger;
    EditNom->Text=MaTable->FieldByName("NOM")->AsString;
    comment puis-je mettre à jour le contrôle TImage :

    ce code me renvoir l'erreur suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Image1->Picture->Bitmap->Assign(DModule->MaTable->FieldByName("MYIMAGE")->AsBlob;



    C++Error MonFicher.cpp (234) E2034 AsBlob is not a member of 'TField'

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 449
    Points : 24 856
    Points
    24 856
    Par défaut
    Si je reprends juste ton code, il manquait le transtypage du TField

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    TBlobField *bf = dynamic_cast<TBlobField*>(DModule->MaTable->FieldByName("MYIMAGE"))
    if (bf)
      Image1->Picture->Bitmap->Assign(bf->AsBlob);
    Voir aussi TGraphic et LoadFromStream
    Ainsi que le TDBImage !

    inspiré de mon code delphi dans le sujet Données de type IMAGE dans Delphi et SQLSever :

    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
    void LoadDBImage(ITImage* I, TDataset* D, TField* F)
    {
      if (F && ! F.IsNull) 
      {
        TStream* m = D->CreateBlobStream(F, bmRead);
        if (m)
        try
        {
          I->Picture->Bitmap->LoadFromStream(m);
        }
        __finally
        {
          delete m;
        }
      }
    }
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

Discussions similaires

  1. [MySQL] afficher un champ blob dans ma page
    Par hammag dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 27/04/2009, 12h04
  2. Afficher un champ memo dans un dbgrid
    Par CharleLéo dans le forum Bases de données
    Réponses: 2
    Dernier message: 24/11/2005, 17h21
  3. Mettre un champ Blob dans un Group By
    Par WebPac dans le forum SQL
    Réponses: 1
    Dernier message: 17/08/2005, 18h03
  4. [.NET][CR] Comment afficher une image blob dans un état ?
    Par moucrack dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 25/06/2005, 13h49
  5. Affectation d'un champs blob dans une var de type TStrings
    Par Andry dans le forum Bases de données
    Réponses: 1
    Dernier message: 16/03/2005, 18h26

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