Pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter, inscrivez-vous gratuitement !

 

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mars 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : mars 2017
    Messages : 6
    Points : 3
    Points
    3

    Par défaut Positionnement automatique des rabiobuttons

    Bonjour à tous,

    Je suis actuellement entrain de faire un petit projet et je me retrouve coincé alors je viens vers vous pour un peu d'aide!!

    Mon projet consiste à lire un fichier csv ligne par ligne. Chaque ligne doit correspondre à un radiobutton.
    Le principe est : lorsque je clique sur un bouton, depuis l'outil openfiledialog l'utilisateur doit choisir un fichier. Ensuite le traitement permet de remplir deux panels avec des radiobuttons.
    Traitement ligne par ligne : Si la 14ème colonne du fichier contient 32 OAI on crée un radiobutton dans le panel 1, son tab index prend la valeur de i puis son texte prend la chaine de caractère de la 32ème colonne du fichier.

    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
    private void button1_Click(object sender, EventArgs e)
    		{
    			//choix du fichier de conf 
    			String Chemin;
    			openFileDialog1.ShowDialog();
    			Chemin = openFileDialog1.FileName;
    			label4.Text = Chemin; // on fait apparaitre le nom du fichier
    			string line;
    			int i = 0;
    			int j = 0;
    			System.IO.StreamReader file = new System.IO.StreamReader(Chemin);
    			while ((line = file.ReadLine()) != null) // on lit une ligne tant qu'il y a quelque chose d'écrit
    			{
    				string[] parts = line.Split(';'); // on s'épare aux ";"
     
    				if (parts[13] == "32 OAI") 
    				{
    					RadioButton rb = new RadioButton();
    					panel1.Controls.Add(rb);
    					rb.TabIndex = i;
    					rb.Text = parts[31];
    					i++;
    				}
    				else if (parts[13] == "64 ODI") 
    				{
    					RadioButton rb = new RadioButton();
    					panel2.Controls.Add(rb);
    					rb.TabIndex = j;
    					rb.Text = parts[31];
    					j++;
    				}
    			}
    				file.Close();
    		}
    Lorsque j'exécute ce code qu'il n'y a pas autant de radiobutton que de lignes dans mon fichier (il y a un seul radibutton par panels).
    Savez d'où vient mon problème car la je ne vois pas du tout.

    Merci d'avance.
    Val..

  2. #2
    Membre confirmé Avatar de nouanda
    Homme Profil pro
    Hobbyist
    Inscrit en
    mai 2002
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Australie

    Informations professionnelles :
    Activité : Hobbyist

    Informations forums :
    Inscription : mai 2002
    Messages : 235
    Points : 515
    Points
    515

    Par défaut

    est-ce que les radio buttons ne sont pas tous créés a la même position, et donc superposés? Par hasard, le seul que tu vois n'aurait-il pas comme texte ce que tu attendrais du dernier element de ton fichier csv?
    Utilise plutôt un flowlayoutpanel, tu ne devrais plus avoir ce problème.

    Au passage, si l'utilisateur ne choisit pas de fichier, FileName est nul, et ça va planter.
    il vaut mieux d'abord tester le résultat de openFileDialog:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
                    OpenFileDialog ofd = new OpenFileDialog();
                    if (ofd.ShowDialog() == DialogResult.OK)
                    {
                        // le boulot ne se fait que si l'utilisateur a clique sur OK
                    }
    Et comme toujours, un petit bloc try/catch est bienvenu, surtout sur les manipulations de fichiers!
    " Entre le Savoir et le Pouvoir, il y a le Vouloir "

    Desole pour les accents, je suis en QWERTY...

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mars 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : mars 2017
    Messages : 6
    Points : 3
    Points
    3

    Par défaut

    Je remercie pour ces infos, j'essaye ça immédiatement et je reviens vers toi pour te dire si ça a résolu mon problème.

  4. #4
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mars 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : mars 2017
    Messages : 6
    Points : 3
    Points
    3

    Par défaut

    ça fonctionne mais je rencontre un dernier problème, le texte de mon radiobutton n'est pas en entier j'ai que les premiers caractères, il y a une option pour régler ça ?

Discussions similaires

  1. Positionnement automatique des puces
    Par Guy_L dans le forum Word
    Réponses: 9
    Dernier message: 19/11/2013, 13h39
  2. VBA / UserForm - Positionnement automatique des boutons Ok & Cancel
    Par Philippe Tulliez dans le forum Contribuez
    Réponses: 7
    Dernier message: 30/07/2011, 15h32
  3. Positionnement automatique des noeuds dans un graphe
    Par Zoook dans le forum Algorithmes et structures de données
    Réponses: 1
    Dernier message: 11/12/2008, 14h25
  4. Réponses: 2
    Dernier message: 04/07/2007, 11h25
  5. positionnement automatique des composants
    Par chti_juanito dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 12/06/2006, 14h01

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