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

VB.NET Discussion :

Parcourir les char d'une textbox


Sujet :

VB.NET

  1. #1
    Membre actif
    Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2010
    Messages : 336
    Points : 227
    Points
    227
    Par défaut Parcourir les char d'une textbox
    Bonjour,

    Voici mon problème :

    En vb6 j'ai une plusieurs textbox dont je parcourt les caractères :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
            For iq = 0 To 2
                TxtTblCodeQuali(iq) = ""
                TxtTblRepertDeb(iq) = ""
                TxtTblRepertFin(iq) = ""
            Next
    j'ai voulu faire de même en VB.Net mais j'ai une erreur :
    La classe 'System.Windows.Forms.TextBox' ne peut pas être indexée, car elle n'a pas de propriété par défaut.
    J'ai essayer de stocker la valeur de ma textbox dans une variable et de "bouclé" dessus mais cela ne marche pas non plus.
    Auriez-vous une idée ?
    J'ai bien une idée du style bidouiller avec la méthode substring mais j'espère qu'il y a plus simple.

    D'avance merci,
    Dharkan.

  2. #2
    Membre actif Avatar de ShadowTzu
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Juin 2005
    Messages
    243
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haute Saône (Franche Comté)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo

    Informations forums :
    Inscription : Juin 2005
    Messages : 243
    Points : 296
    Points
    296
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TxtTblCodeQuali.Text(iq) = ""

  3. #3
    Membre actif
    Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2010
    Messages : 336
    Points : 227
    Points
    227
    Par défaut
    Citation Envoyé par ShadowTzu Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TxtTblCodeQuali.Text(iq) = ""
    Non j'ai déjà testé aussi il me dit que : la propriété Chars est readonly.

    Du coup j'ai bidouillé cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
            For iq = 0 To 2
                TxtTblCodeQuali.Text = "" & TxtTblCodeQuali.Text.Substring(iq + 1)
                TxtTblRepertDeb.Text = "" & TxtTblRepertDeb.Text.Substring(iq + 1)
                TxtTblRepertFin.Text = "" & TxtTblRepertFin.Text.Substring(iq + 1)
            Next
    On verra ce que cela donne. Je reste ouvert à d'éventuelle proposition car je suspecte une exception de dépassement d'indice qui serai plausible dans certain cas. Je vérifié au préalable que les champs ne sont pas nul ou vide.

  4. #4
    Membre chevronné
    Avatar de Sehnsucht
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2008
    Messages
    847
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Octobre 2008
    Messages : 847
    Points : 2 209
    Points
    2 209
    Par défaut
    Déjà ce n'est pas du VB6 ; il s'agit de VB.Net

    Ensuite Quand je lis "j'ai une plusieurs textbox dont je parcourt les caractères" ; je m'attends à voir au moins 2 boucles imbriquées, une qui parcours les textbox et l'autre qui parcourt les caractères du textbox actuel.
    Après quand je vois unTextBox.Text = unTextBox.Text.Substring(index + 1)j'ai un peu peur que ça plante en effet (j'ai supprimé la concaténation avec "" inutile car ajouter une chaine vide à une chaine donnera toujours cette seconde chaine [sous réserve que ça ne plante pas]) ; car en effet ça plantera si la chaine contenue dans le textbox a une longueur inférieure ou égale à l'indice actuel.

    Enfin, donc, il faudrait vraiment expliquer de manière claire, précise (et si possible concise) ce que tu souhaites faire parce que pour le moment c'est pas nécessairement évident .
    Nous sommes tous plus ou moins geek : ce qui est inutile nous est parfaitement indispensable ( © Celira )
    À quelle heure dormez-vous ?
    Censément, quelqu'un de sensé est censé s'exprimer sensément.

  5. #5
    Membre émérite Avatar de mactwist69
    Homme Profil pro
    Développement VB.NET
    Inscrit en
    Janvier 2007
    Messages
    1 707
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développement VB.NET
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 707
    Points : 2 528
    Points
    2 528
    Par défaut
    Ce que tu souahites faire n'est tout simplement plus possible en VB.NET.
    Accéder aux contrôles via un index... C'est finis ça.

    MAIS, tu peux quand même toujours boucler sur les contrôles d'un form, tester leur type et faire ton traitement...

    Cette question reviens souvent, tu trouveras rapidement sur Google
    L'avenir appartient à ceux... dont les ouvriers se lèvent tôt. (Coluche)

  6. #6
    Membre actif
    Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2010
    Messages : 336
    Points : 227
    Points
    227
    Par défaut
    Citation Envoyé par mactwist69 Voir le message
    Ce que tu souahites faire n'est tout simplement plus possible en VB.NET.
    Accéder aux contrôles via un index... C'est finis ça.

    MAIS, tu peux quand même toujours boucler sur les contrôles d'un form, tester leur type et faire ton traitement...

    Cette question reviens souvent, tu trouveras rapidement sur Google
    Merci c'était bien cela, car j'avais des textbox dont la propriété (name) était la même. Du coup il ne s'agit pas de traitement sur les chaines de caractères mais bien d'accéder aux contrôles ayant le même nom. Le pire c'est que en .NET j'ai renommé en "...1", "...2" , "...3"
    haaaaa le vb est bien trop permissif

    Merci à toi

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

Discussions similaires

  1. vb6 parcourir les liens d'une page web
    Par mqsi dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 08/11/2006, 20h29
  2. Parcourir les membres d'une classe
    Par oodini dans le forum C++
    Réponses: 4
    Dernier message: 20/10/2006, 22h59
  3. Réponses: 8
    Dernier message: 17/08/2006, 16h51
  4. Réponses: 6
    Dernier message: 29/06/2006, 13h54
  5. [VB.NET] Parcourir les attributs d'une classe
    Par pasqwal dans le forum Windows Forms
    Réponses: 3
    Dernier message: 15/02/2005, 09h47

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