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

MFC Discussion :

Affichage de données dans une ListCtrl


Sujet :

MFC

  1. #1
    Membre averti
    Inscrit en
    Avril 2009
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 35
    Par défaut Affichage de données dans une ListCtrl
    Bonjour à toutes et à tous,
    ce post fait suite à un précédent post "lecture d'un fichier" qui a été résolu (pour ceux que cela intérésse).
    Je souhaiterais afficher des données récupérées à partir d'un fichier au format CSV dans une ListCtrl.
    Je m'explique :
    à la base je disposait d'un fichier contenant des chiffres séparés par un ; que j'ai réussi à lire grâce à la méthode strtok.
    Maintenant que j'arrive à lire ces données je souhaiterai les afficher dans ma listctrl qui posséde 9 colonnes et un grand nombre de ligne.
    Voici le code actuel :
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
     
    bool CChargementBoiteAntenneEtAntenneDlg::loadBA(CString strFileBA)
    {
    // Partie concernant la lecture du fichier et la séparation ;
    	bool b_result = true;
     
    	char * format = strFileBA.GetBuffer(9);
    	char seps[]   = ";";
    	char *token;
     
    	/* Establish string and get the first token: */
    	token = strtok( format, seps );
    	while( token != NULL )
    	{
    		 /* While there are tokens in "string" */
    		 printf( " %s\n", token );
    		 /* Get next token: */
    		 token = strtok( NULL, seps );
    	}
     
     
    // Partie concernant l'affichage dans la ListCtrl
     
    	double freq,imped1,adapt1;
    	double imped2,adapt2;
     
    	m_list_carac_boite_antenne.DeleteAllItems();
     
    	CStdioFile file;
    	if(!file.Open((LPCTSTR)strFileBA,CFile::modeRead))
    	{
    		AfxMessageBox("impossible d'ouvrir le fichier "+strFileBA);
    		return false;
    	}
     
    	else
    		while (file.ReadString (strFileBA))
    		{
    				strFileBA.Format("%1.lf",freq);
    				m_list_carac_boite_antenne.InsertItem(m_list_carac_boite_antenne.GetItemCount(),strFileBA);
    				strFileBA.Format("%1.4lf",imped1);
    				m_list_carac_boite_antenne.SetItemText(m_list_carac_boite_antenne.GetItemCount() - 1,1,strFileBA);
    				strFileBA.Format("%1.3lf",adapt1);
    				m_list_carac_boite_antenne.SetItemText(m_list_carac_boite_antenne.GetItemCount() - 1,2,strFileBA);
    				strFileBA.Format("%1.4lf",imped2);
    				m_list_carac_boite_antenne.SetItemText(m_list_carac_boite_antenne.GetItemCount() - 1,3,strFileBA);
    				strFileBA.Format("%1.3lf",adapt2);
    				m_list_carac_boite_antenne.SetItemText(m_list_carac_boite_antenne.GetItemCount() - 1,4,strFileBA);
    		}
     
    	return b_result;
    }
    Merci d'avance pour votre aide

  2. #2
    Membre éprouvé
    Avatar de TheGzD
    Homme Profil pro
    Ingénieur/ Docteur en Informatique
    Inscrit en
    Avril 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Ingénieur/ Docteur en Informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 327
    Par défaut
    Peut-être quelques éléments de réponse sur le post suivant : http://www.developpez.net/forums/d73...r-fichier-csv/

  3. #3
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    salut,
    remplir une ListCtrl voir faq: http://cpp.developpez.com/faq/vc/?pa...trlInitAndFill

  4. #4
    Membre averti
    Inscrit en
    Avril 2009
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 35
    Par défaut
    Bon j'ai essayé de suivre vos conseils, mais j'avoue que je n'ais pas réussit à arriver à mes fins.
    J'ai repris le code pour remplir un ComboBox en l'adaptant quelque peu mais sans succès.

    Pour le moment le code que j'ai tappé ne donne rien, lorsque j'execute mon programme il ne se passe rien du tout.

    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
     
    bool CChargementBoiteAntenneEtAntenneDlg::loadBA(CString strFileBA)
    {
    	bool b_result = true;
     
    	char * format = strFileBA.GetBuffer(9);
    	char seps[]   = ";";
    	char *token;
     
    	/* Establish string and get the first token: */
    	token = strtok( format, seps );
    	while( token != NULL )
    	{
    		 /* While there are tokens in "string" */
    		 printf( " %s\n", token );
    		 /* Get next token: */
    		 token = strtok( NULL, seps );
    	}
     
    	double freq,imped1,adapt1;
    	double imped2,adapt2;
     
    	CString temp;
     
    	CWinApp * theApp = AfxGetApp();
    	if(theApp)
    	{
      		temp = theApp->GetProfileString("CSV_DELIMITERS","DELIM",";");
    		seps[9] = temp.GetAt(0);
    	}
     
    	m_list_carac_boite_antenne.DeleteAllItems();
     
    	CStdioFile file;
    	if(!file.Open((LPCTSTR)strFileBA,CFile::modeRead))
    	{
    		AfxMessageBox("impossible d'ouvrir le fichier "+strFileBA);
    		return false;
    	}
    	while (file.ReadString(strFileBA))
    	{ 
    		if (sscanf(format,seps,&freq,&imped1,&adapt1,&imped2,&adapt2))
    		{
     
    		temp.Format("%1.lf",freq);
    		m_list_carac_boite_antenne.InsertItem(m_list_carac_boite_antenne.GetItemCount(),temp);
    		temp.Format("%1.4lf",imped1);
    		m_list_carac_boite_antenne.SetItemText(m_list_carac_boite_antenne.GetItemCount() - 1,1,temp);
    		temp.Format("%1.3lf",adapt1);
    		m_list_carac_boite_antenne.SetItemText(m_list_carac_boite_antenne.GetItemCount() - 1,2,temp);
    		temp.Format("%1.4lf",imped2);
    		m_list_carac_boite_antenne.SetItemText(m_list_carac_boite_antenne.GetItemCount() - 1,3,temp);
    		temp.Format("%1.3lf",adapt2);
    		m_list_carac_boite_antenne.SetItemText(m_list_carac_boite_antenne.GetItemCount() - 1,4,temp);
    		}
    	}
    	return b_result;
    }
    HELP ME PLEASE!

  5. #5
    Membre éprouvé
    Avatar de TheGzD
    Homme Profil pro
    Ingénieur/ Docteur en Informatique
    Inscrit en
    Avril 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Ingénieur/ Docteur en Informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 327
    Par défaut
    Commence par vérifier ce que contient ta variable token, car après un rapide coup d'œil j'ai l'impression que ça vient de là ...

  6. #6
    Membre averti
    Inscrit en
    Avril 2009
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 35
    Par défaut
    Je ne comprends pas pourquoi le problème viendrait de ma variable, j'ai suivit à la lettre l'exemple du lien que tu m'avait donné.

    En ce qui me concerne, je pense que le problème serait plutôt localisé du côté du sscanf. Mais je ne vois pas vraiment quoi changer pour que cela fonctionne.

  7. #7
    Membre éprouvé
    Avatar de TheGzD
    Homme Profil pro
    Ingénieur/ Docteur en Informatique
    Inscrit en
    Avril 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Ingénieur/ Docteur en Informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 327
    Par défaut
    Je t ai donné le principe et un exemple de fonctionnement de strtok, si après tu ne l'adaptes pas à ton cas ça ne risque pas de marcher.

    Explique moi déjà ce que fait ton code ? parce que qd je vois
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sscanf(format,seps,&freq,&imped1,&adapt1,&imped2,&adapt2)
    je me demande vraiment si t as compris quoi que ce soit à ce que je t ai raconté ...

    Puis globalement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
        char * format = strFileBA.GetBuffer(9);
        char seps[]   = ";";
        char *token;
     
        /* Establish string and get the first token: */
        token = strtok( format, seps );
        while( token != NULL )
        {
             /* While there are tokens in "string" */
             printf( " %s\n", token );
             /* Get next token: */
             token = strtok( NULL, seps );
        }
    ne fait absoluement rien à part t'afficher la valeur avant le premier ";" à l'écran ... valeur que tu n'as stockée nul part, puis dont tu ignores les 8 suivantes (il me semble me souvenir que tu avais 9 valeurs par ligne à récupérer).



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Je ne comprends pas pourquoi le problème viendrait de ma variable
    vois tu mieux maintenant ?

  8. #8
    Membre averti
    Inscrit en
    Avril 2009
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 35
    Par défaut
    OK donc j'ai bien compris, il faut que j'abandonne définitevement le sscanf pour faire ce que je veut faire.

    J'ai donc remplacé NULL par format (qui est censé contenir toutes les variables de mon fichier).

    Puis une fois que j'ai "découpé" les valeurs de mon fichier, il faut que je stocke ces dernières dans une variable.

    Cependant je croyais justement que la variable token était censée stocké ces variables.

    PS : je comprends que cela puisse agacer que je ne comprenne pas tout mais comme dit je suis vraiment novice en c++ et surtout avec les MFC, je ne connaissait pas avant.

  9. #9
    Membre averti
    Inscrit en
    Avril 2009
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 35
    Par défaut
    Bonjour,
    j'ai essayé de faire ceci :
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    bool b_result = true;
     
    	char * string = strFileBA.GetBuffer(100);
    	char seps[]   = ";";
    	char *token;
     
    	int i = 0;
     
    	double freq/*,imped1,adapt1*/;
    //	double imped2,adapt2;
     
    /*	CWinApp * theApp = AfxGetApp();
    	if(theApp)
    	{
      		temp = theApp->GetProfileString("CSV_DELIMITERS","SEPS",";");
    		seps[9] = temp.GetAt(0);
    	}
    */
    	/* Establish string and get the first token: */
    	token = strtok(string, seps);
    	while(token != string)
    	{
    		i++;
    		if((CString) token == string)
    		{
    			freq = i;
    			token = NULL;
    		}
    		token = strtok( NULL, ";\n" );
    	}
    	i = 0;
     
    		 /* While there are tokens in "string" */
    		 //printf( "%s", token );
    		 /* Get next token: */
    		 token = strtok( string, seps );
    	}
    mais ca ne fonctionne pas.
    En essayant d'adapter ce qu'a fait la personne pour remplir une combobox.

  10. #10
    Membre éprouvé
    Avatar de TheGzD
    Homme Profil pro
    Ingénieur/ Docteur en Informatique
    Inscrit en
    Avril 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Ingénieur/ Docteur en Informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 327
    Par défaut
    Pourrais-tu faire un algo de principe détaillé afin d'expliquer exactement ce que tu veux faire et comment tu penses le faire ?

    Parce que je pense vraiment qu'il y a un réel problème de compréhension là.

  11. #11
    Membre averti
    Inscrit en
    Avril 2009
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 35
    Par défaut
    OK si tu veut en gros pour expliquer rapidement je voudrais mettre la première colonne de mon fichier csv dans la première colonne de ma listCtrl, la deuxième colonne de mon fichier csv dans la deuxième colonne de ma listCtrl et ainsi de suite pour les 9 colonnes de mon fichier csv.
    Le but est en fait de récupérer les valeurs afin de pouvoir ensuite les exploiter individuellement.

    Voici un petit algo (en pièce jointe), je ne sais pas si c'est plus clair pour toi maintenant.
    Images attachées Images attachées  

  12. #12
    Membre éprouvé
    Avatar de TheGzD
    Homme Profil pro
    Ingénieur/ Docteur en Informatique
    Inscrit en
    Avril 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Ingénieur/ Docteur en Informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 327
    Par défaut
    Je te demande l'algo complet en t'affranchissant du langage (le C++ ici) ou de l'IDE utilisé(VS). Ce que tu m'as filé et tout sauf détaillé.

  13. #13
    Membre averti
    Inscrit en
    Avril 2009
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 35
    Par défaut
    Euh là je t'avoue c'est un peu du chinois pour moi ce que tu me demande.
    Je ne vois pas très bien ce qu'il faut que je te fasse.

    Je vais essayé d'être un peu plus clair alors.
    IDE Visual c++ 6.
    But du projet : récupérer les valeurs d'un fichier csv en les affichant dans une listCtrl afin de pouvoir exploiter les valeurs individuellement.
    Idée : lire les données du fichier, découper les valeurs séparées par des points virgule, les envoyer dans la listCtrl.

    Voilà j'espére que c'est plus clair que ce que je t'ais envoyé. Je suis désolé mais je ne vois pas vraiment ce que c'est qu'un algo de principe.

  14. #14
    Membre éprouvé
    Avatar de TheGzD
    Homme Profil pro
    Ingénieur/ Docteur en Informatique
    Inscrit en
    Avril 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Ingénieur/ Docteur en Informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 327
    Par défaut
    Ce que je te demande c'est de le dire (avec tes mots s'il le faut) ce que ton code va faire techniquement. Si tu ne sais pas ce que tu fais désolé mais j'ai peur de ne pas pouvoir t'aider autrement qu'en faisant ton travail à ta place ce que je ne compte pas faire

    En espérant que tu trouveras ici ce qu'il te faut : http://www.developpez.net/forums/d30...algorithmique/

    Je te demande bien évidemment pas d'être aussi formel, mais d'être capable de me dire exactement (dans le détail) ce que tu veux faire. Les seuls questions pour lesquelles on devrait avoir à t'aider au final devraient être du genre "quelle est la fonction qui fait tel truc ?" ou encore "pourquoi telle fonction ne renvoie pas la bonne valeur?" ...

  15. #15
    Membre averti
    Inscrit en
    Avril 2009
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 35
    Par défaut
    Bon alors je vais essayer, je ne te garantit pas un résultat parfait mais bon.
    Bon ce que mon code est censé faire :
    Variable : strFileBA fichier csv concerné
    str_tmp : contient la donnée lorsqu'il y a un ";"

    Il doit lire les lignes de mon fichier csv, à chaque fois qu'il rencontre un séparateur (le il stocke la valeur dans une variable, et envoye cette variable à la listCtrl, puis continue jusqu'à ce qu'il rencontre un autre séparateur, il stocke la variable puis envoie la valeur stockée dans la colonne suivante de la listCtrl, et ainsi de suite jusqu'à ce qu'il rencontre un blanc de fin de ligne (c'est à dire après les 9 colonnes du fichier). Il passe alors sur la ligne suivante puis recommence en envoyant les valeurs stockées sur la deuxième ligne de la listCtrl, et ainsi de suite jusqu'à la fin du fichier.

    Bon voilà je pense que je ne pourrait pas faire mieux. J'espére que c'est plus clair maintenant et que c'est ce que tu attendait que je fasse.

  16. #16
    Membre éprouvé
    Avatar de TheGzD
    Homme Profil pro
    Ingénieur/ Docteur en Informatique
    Inscrit en
    Avril 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Ingénieur/ Docteur en Informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 327
    Par défaut
    Maintenant que tu as fait ce petit travail de réflexion reprend ton code et fait le parallèle entre le principe dont tu viens de me parler et le code que tu as déjà fait. En clair dit moi ce que fait chaque ligne et fait ressortir l'algorithme de lecture du fichier et de remplissage de la liste.

    Ce n'est qu'en comprenant ce que tu fais ou devrais faire que tu pourras avancer.

  17. #17
    Membre averti
    Inscrit en
    Avril 2009
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 35
    Par défaut
    Ok bon je vais essayer de faire ce que tu me demande. Le code que j'ai tappé est le suivant :
    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
    17
     
                 char *string = strFileBA.GetBuffer(100);
    	char *pointeur;
    	char separateur[] = ";";
    	char *buffer;
    	int i = 0;
     
    	pointeur = strtok(buffer, separateur);	// Premier appel à la fonction strtok, qui va mettre la première valeur dans la variable pointeur
     
    	while (pointeur != string)				// Tant qu'on se trouve dans le fichier on le parcours
    	{
    		pointeur = strtok (string, separateur);	// On cherche les autres séparateurs
    		if(pointeur != string)
    		{
    			i++;			// Passage à la colonne suivante
    		}
    	}
    Bon voilà je ne sais pas si c'est très clair. Ce que je sais, c'est que ce code ne fait que lire les données de mon fichier csv. D'après moi, les valeurs sont stockées dans pointeur.
    Le soucis : je reflechit à comment envoyer ces valeurs dans la listCtrl.

  18. #18
    Membre éprouvé
    Avatar de TheGzD
    Homme Profil pro
    Ingénieur/ Docteur en Informatique
    Inscrit en
    Avril 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Ingénieur/ Docteur en Informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 327
    Par défaut
    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
        char *string = strFileBA.GetBuffer(100); //la ligne à découper en 9 variable je présume ?
        char *pointeur;
        char separateur[] = ";";
        char *buffer; //c'est quoi ça ? initialisation ?
        int i = 0;
     
        pointeur = strtok(buffer, separateur);    // Premier appel à la fonction strtok, qui va mettre la première valeur dans la variable pointeur -> ton strtok est sensé faire quoi (actions et variables impliquées) selon toi ? 
     
        while (pointeur != string)                // Tant qu'on se trouve dans le fichier on le parcours -> que veut dire la condition "pointeur != string" ?
        {
            pointeur = strtok (string, separateur);    // On cherche les autres séparateurs -> va relire la doc de strtok  !!!
            if(pointeur != string) //que veut dire cette condition ?
            {
                i++;            // Passage à la colonne suivante
            }
        }
    Répond à ces questions et détermine ce qui ne va pas.

    Ce que je sais, c'est que ce code ne fait que lire les données de mon fichier csv. D'après moi, les valeurs sont stockées dans pointeur.
    si seulement ... t'es encore loin d'en être là

  19. #19
    Membre averti
    Inscrit en
    Avril 2009
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 35
    Par défaut
    Bon pour compléter je vais essayer de commenter la suite de mon code
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    double freq = 0,imped1 = 0,adapt1 = 0;		// Définition des variables de la listCtrl
    	double imped2 = 0,adapt2 = 0;
     
    	// Si le fichier n'est pas ouvert on affiche "impossible d'ouvrir le fichier"
    	if(!file.Open((LPCTSTR)strFileBA,CFile::modeRead))	
    	{
    		AfxMessageBox("impossible d'ouvrir le fichier "+strFileBA);
    		return false;
    	}
     
    	// Tant que le fichier est ouvert
    	while (file.ReadString(strFileBA))
    	{ 
    		// On prend la valeur stocké dans pointeur puis on la mais dans la colonne freq
    		pointeur.Format("%1.lf",freq);
    		m_list_carac_boite_antenne.InsertItem(m_list_carac_boite_antenne.GetItemCount(),pointeur);
    		// On prend la valeur stocké dans pointeur puis on la mais dans la colonne imped1 ...
    		pointeur.Format("%1.4lf",imped1);
    		m_list_carac_boite_antenne.SetItemText(m_list_carac_boite_antenne.GetItemCount() - 1,1,pointeur);
    		pointeur.Format("%1.3lf",adapt1);
    		m_list_carac_boite_antenne.SetItemText(m_list_carac_boite_antenne.GetItemCount() - 1,2,pointeur);
    		pointeur.Format("%1.4lf",imped2);
    		m_list_carac_boite_antenne.SetItemText(m_list_carac_boite_antenne.GetItemCount() - 1,3,pointeur);
    		pointeur.Format("%1.3lf",adapt2);
    		m_list_carac_boite_antenne.SetItemText(m_list_carac_boite_antenne.GetItemCount() - 1,4,pointeur);
    	}

  20. #20
    Membre averti
    Inscrit en
    Avril 2009
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 35
    Par défaut
    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
    17
    18
    19
    20
     
    char *string = strFileBA.GetBuffer(100); //la ligne à découper en 9 variable 
        char *pointeur = NULL;
        char separateur[] = ";";
        int i = 0;
     
        pointeur = strtok(string, separateur);    // Le strtok est censé divisé les lignes du fichier séparées par un delimiteur
     
        while (pointeur != NULL)                // Tant qu'on est pas à la fin du fichier 
        {
            pointeur = strtok (NULL, separateur);    // Je pense que cette instruction est juste la pour dire qu'on se trouve à la fin du fichier!! 
    												 // Donc à mon avis au mauvais endroit, je la mettrai plutôt à la fin de ma boucle if
            if(pointeur != NULL) // Si on est pas à la fin du fichier alors on incrémente i. Le if est inutile à mon avis
            {
                i++;            // Passage à la colonne suivante
    							// Je pense que c'est à cet endroit qu'il faut stocker les valeurs!!
            }
        }
     
    	// strtok retourne un pointeur sur la dernière valeur trouvée
    Bon j'ai essayé de comprendre mes erreurs dit moi si c'est juste ou pas.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. affichage des donnes dans une datagridview
    Par daloul dans le forum VB.NET
    Réponses: 1
    Dernier message: 25/04/2008, 08h04
  2. Réponses: 3
    Dernier message: 11/10/2007, 12h18
  3. limite de l'affichage des donnés dans une Bdgrid
    Par helmis dans le forum Bases de données
    Réponses: 3
    Dernier message: 19/07/2006, 09h15
  4. affichage de données dans une zone de texte
    Par Lamie dans le forum Access
    Réponses: 2
    Dernier message: 06/07/2006, 15h31
  5. Affichage de donnée dans une page
    Par leloup84 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 21/02/2006, 17h54

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