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 :

copié les données de DBGrid dans un StringGrid


Sujet :

C++Builder

  1. #1
    Membre éclairé
    Inscrit en
    Avril 2008
    Messages
    335
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 335
    Par défaut copié les données de DBGrid dans un StringGrid
    Bonjour
    est ce qu' il ya un code qui me permet de copié les données de DBGrid dans un StringGrid . j'ai utilisé ce code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for(int i=1;i<DBGrid1->FieldCount;i++)
    {Form2->StringGrid3->Cells[i][1]=Form2->DBGrid1->Fields[i]->AsString;
     
    }
    mais il copi que les colonnes de DBGrid pas les lignes
    merci d'avance pour votre aide

  2. #2
    Membre Expert
    Avatar de kmaniche
    Inscrit en
    Janvier 2006
    Messages
    1 717
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 717
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
       for(int t = 0; t <Grid -> DataSource ->DataSet -> RecordCount; t++)    
            for(int i = 0; i < Grid -> DataSource->DataSet -> FieldCount; i++)
                 StringGrid -> Cells[i][t] = Grid -> DataSource->DataSet -> Fields->Fields[i]->AsString;

  3. #3
    Membre éclairé
    Inscrit en
    Avril 2008
    Messages
    335
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 335
    Par défaut
    bonjour
    avec ce code le StringGrid est rempli par une repetition des données de la premiere ligne de DBGrid.
    merci d'avance

  4. #4
    Expert confirmé

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Par défaut
    Salut,
    si tu faisait un minimum d'effort et de recherche, tu t'apercevrait qu'il ne te manque qu'une ligne de code pour que ce soit correcte et qu'elle n'est pas difficile à trouver.
    Attendre que le code tombe tout cuit dans tes bras n'est pas une bonne habitude à prendre

  5. #5
    Membre Expert
    Avatar de kmaniche
    Inscrit en
    Janvier 2006
    Messages
    1 717
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 717
    Par défaut
    Un indice :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    .... -> Next() ;

  6. #6
    Membre éclairé
    Inscrit en
    Avril 2008
    Messages
    335
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 335
    Par défaut
    bonjour
    si je connai la solution je vous derange pas par mes questions.vrement j'ai besoin votre aide, merci comeme .

  7. #7
    Membre Expert
    Avatar de kmaniche
    Inscrit en
    Janvier 2006
    Messages
    1 717
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 717
    Par défaut
    Certainement, ce site est fait pour, mais il faut bosser un peu, cela te permettra de résoudre ce genre de problème au futur.

  8. #8
    Membre Expert
    Avatar de kmaniche
    Inscrit en
    Janvier 2006
    Messages
    1 717
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 717
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    for(int t = 0; t <Grid -> DataSource ->DataSet -> RecordCount; t++)    
            for(int i = 0; i < Grid -> DataSource->DataSet -> FieldCount; i++)
                 {
    StringGrid -> Cells[i][t] = Grid -> DataSource->DataSet -> Fields->Fields[i]->AsString;
                     Grid -> DataSource->DataSet -> Next() ;
         }

  9. #9
    Membre éclairé
    Inscrit en
    Avril 2008
    Messages
    335
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 335
    Par défaut
    Bonjour
    merci Kmaniche, j'ai déja utilisé ce code mais le probleme existe toujour

  10. #10
    Expert confirmé

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Par défaut
    Salut,
    le bon code est celui-ci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    for(int t = 0; t <Grid -> DataSource ->DataSet -> RecordCount; t++)  
    {  
            for(int i = 0; i < Grid -> DataSource->DataSet -> FieldCount; i++)
            {
                   StringGrid -> Cells[i][t] = Grid -> DataSource->DataSet -> Fields->Fields[i]->AsString;
            }
            Grid -> DataSource->DataSet -> Next() ;
    }

  11. #11
    Membre éclairé
    Inscrit en
    Avril 2008
    Messages
    335
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 335
    Par défaut
    merci pottier
    le code fonctionne bien mais le fete de cliqué pour une 2eme fois sur le boutton les resultats changent alors j'ai met le boutton Enabled a false

  12. #12
    Expert confirmé

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Par défaut
    Salut,
    content que ça fonctionne
    Si tu as résolu ton problème, tu peut cliquer sur le bouton qui se trouve en bas de la discussion


  13. #13
    Membre éclairé
    Inscrit en
    Avril 2008
    Messages
    335
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 335
    Par défaut
    Bonjour
    pour ce qui est intéressé, voici un autre code qui fonctionne très bien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     int t=1;
    Form2->Table3->First();
      while(!Form2->Table3->Eof)
    {
      for(int i =1; i < Form2->Table3->FieldCount; i++)
           {
           Form2->StringGrid3->Cells[i][t]= Form2->Table3->Fields->Fields[i]->AsString;
     
            }
     
             t=t+1;
    Form2->Table3->Next() ;
            }

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

Discussions similaires

  1. copie les donnes dans word
    Par lounacou dans le forum IHM
    Réponses: 2
    Dernier message: 13/08/2011, 20h37
  2. [XL-2003] Faire correspondre une colonne avec une autre et copié les données dans la bonne colonne
    Par mairiemeudon dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 01/06/2010, 15h31
  3. Réponses: 10
    Dernier message: 06/06/2007, 18h19
  4. afficher les resultats du DBgrid dans un Edit
    Par tchimou dans le forum Bases de données
    Réponses: 12
    Dernier message: 30/04/2007, 12h59
  5. Réponses: 1
    Dernier message: 07/01/2006, 23h33

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