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 6 et antérieur Discussion :

Gestion groupe de controles


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de bruce207
    Inscrit en
    Novembre 2007
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 319
    Par défaut Gestion groupe de controles
    Bonjour,
    mon probleme est que :
    a)j'ai un groupe de controles textbox, mais je voudrais mettre du code pour pouvoir afficher la date sous forme de jj/mm/aaaa à 2 d'entre eux, et je ne sais pas comment l'appliquer rien qu'a ces 2 là. après avoir taper mon code dans private sub textbox1_change() qui ici fait reference à tous les textbox j'ai un message d'erreur, je voudrais savoir comment faire pour que le code n'affecte que ces 2 champs là.
    b) j'ai taper le code suivant pour avoir la date sous forme jj/mm/aaaa
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub Text1_Change(index as integer)
    	Dim Valeur As Byte
    	Text1.MaxLength = 10 'nb caractères maxi autorisé dans le textbox
    	Valeur = Len(Text1)
    	If Valeur = 2 Or Valeur = 5 Then Text1 = Text1 & "/"
    End Sub
    mais après avoir taper les 2 premieres chiffres de la date, il y a ajout du / et le curseur revient au debut et ne continue plus comme demandé. Est-ce une erreur de code ? Comment faire ?
    Merci

  2. #2
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Par défaut
    Bonjour,

    déjà : te référer toujours à l'index du contrôle pour te rérérer à un contrôle particulier d'un groupe indexé (c'est cet index qui le caractérise)

    ensuite : il vaut toujours mieux préciser la propriété concernée (ici : text)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub Text1_Change(index as integer)
    	Dim Valeur As Byte
    	Text1(index).MaxLength = 10 'nb caractères maxi autorisé dans le textbox
    	Valeur = Len(Text1(index).text)
    	If Valeur = 2 Or Valeur = 5 Then Text1(index).text = Text1(index).text & "/"
    End Sub
    enfin : si tu veux qu'après modif, ton curseur se place à la fin :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Text1(index).selstart = len(Text1(index).text)

  3. #3
    Membre Expert
    Avatar de Delbeke
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 675
    Détails du profil
    Informations personnelles :
    Âge : 72
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Par défaut
    Pour ne faire tes test que sur deux des textbox tu peux utiliser la propriété index

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub Text1_Change(index as integer)
      Dim Valeur As Byte
      select case index
      case 2,5
    	Text1(index).MaxLength = 10 'nb caractères maxi autorisé dans le textbox
    	Valeur = Len(Text1(index).text)
    	If Valeur = 2 Or Valeur = 5 Then Text1(index).text = Text1(index).text & "/"
      end Select
    End Sub
    Ou encore mettre une indication dans la propriété tag des textbox concerné

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub Text1_Change(index as integer)
      Dim Valeur As Byte
      If Text1(Index).Tag="Date" then
    	Text1(index).MaxLength = 10 'nb caractères maxi autorisé dans le textbox
    	Valeur = Len(Text1(index).text)
    	If Valeur = 2 Or Valeur = 5 Then Text1(index).text = Text1(index).text & "/"
      End If
    End Sub

Discussions similaires

  1. Type "groupe de controles" dans une function
    Par méphistopheles dans le forum VB 6 et antérieur
    Réponses: 15
    Dernier message: 20/06/2008, 21h07
  2. probleme de groupe de control inexistant
    Par levac dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 22/05/2007, 11h56
  3. Réponses: 1
    Dernier message: 17/03/2006, 18h02
  4. [VBA-A]création de groupes de controles
    Par JulienCEA dans le forum VBA Access
    Réponses: 1
    Dernier message: 17/03/2006, 14h32
  5. Réponses: 5
    Dernier message: 26/03/2005, 12h07

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